如何用git上傳代碼到github詳細步驟


文章出處:https://blog.csdn.net/zeng092210/article/details/95622318

注冊賬戶

這個小菜鳥帶着心跳寫的第一篇博客! 還請大家多多提點!

 想使用github,第一步肯定是要注冊github賬號,有了賬號就是直接登錄啦

可以直接打開http://github.com頁面注冊

 

創建倉庫

注冊、登錄完成之后,在登錄頁面最上方用戶菜單上選擇 “+”->New repository 創建一個新的倉庫

 

 

進入創建倉庫頁面取名字、點擊創建倉庫,將會生成你的第一個倉庫

 

安裝git客戶端

github是服務端,要在自己電腦上使用git我們還需要一個git客戶端

windows用戶下載鏈接:http://msysgit.github.com/

mac用戶下載鏈接:http://code.google.com/p/tortoisegit/

一路next下來,安裝成功,回到c盤,在任何文件夾下鼠標點擊右鍵出現菜單中有  Git GUI here 、 Git Bash here,說明安裝沒毛病

 

配置git

可以在電腦盤中任意地方存放本地倉庫,像我的倉庫是放在D:\888下  這個看個人

進入888文件夾下,操作如下:

  1).鼠標右擊選擇Git Bash here,出現命令彈框,輸入 git init 回車,會發現在888文件夾下多出一個.git文件,此時表示git創建成功。截圖如下:

 $ git init 

 

  2).在本地創建ssh key

$ ssh-keygen -t rsa -C "自己的郵箱"

     以上代碼解釋:是自己在github上注冊的郵箱

上面的步驟直接回車即可,說明會在默認文件id_rsa上生成ssh key。 

Enter passphrase (empty for no passphrase):   

以上這句代碼的意思是系統要求輸入密碼,直接按回車表示不設密碼

Enter same passphrase again:

以上這句代碼的意思是重復密碼,如果設了密碼再次輸入,否車直接回車即可,之后出現這個框提示你ssh ksy已經生成成功

  3).然后我們進入提示的地址下查看ssh ksy文件,我的電腦地址是c/Users/zenai/.ssh/id_rsa.

注意:git init后 .ssh中生成兩個文件id_rsa和id_rsa.pub。這樣是正常的 , known_hosts文件是在成功建立建立連接后才會出現。至於這幾個文件有什么作用,我推薦大神博客:https://www.cnblogs.com/hustskyking/p/problems-in-git-when-ssh.html 。

 

不要去管.git文件夾,如果你的文件夾下面沒有.git文件夾也沒關系,這個是個人電腦的原因,< _ >

廢話少說 直接打開id_rsa.pub文件,不要看里面是什么也看不懂,直接全部復制,但提醒看一下是不是ssh-rsa開頭的,如果是就是對的。

  4).回到github網站,進入Account Settings,左邊SSH Keys , Add SSH Key,

 

點擊 Settings 進入

 

點擊Add SSH key 看網址下面沒有報帶色的錯誤,出現下圖內容表示好了

 

  5).驗證是否成功,在git bash命令中輸入

$ ssh -T git@github.com

回車看到:You’ve successfully authenticated, but GitHub does not provide shell access 。這就表示已成功連上github。截圖如下:

  注意:此處可能會出現一下情況(可能有通知發現我並不是在888文件夾下操作的,這只是后補的。可以當做是888文件夾下)

而這句話的意思是:github身份驗證不確定,是否還要繼續建立連接。(大致是這個意思,英語不太好),不出幺蛾子接下會走到下面這一步 =》

  6).接下來我們做的就是把本地倉庫傳到github上去,在此之前還需要設置username和email,因為github每次commit都會記錄他們

$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com"

上面代碼your name是你github賬號的name,your_email@youremail.com是你github上注冊的郵箱

分別輸入上述命令回車,截圖如下:

  6).接下來就是上傳項目到github了,進入要上傳的倉庫,右鍵進入git bash ,添加遠程地址

$ git remote add origin git@github.com:yourName/yourRepo.git

上面代碼中的yourName和yourRepo表示你在github上的用戶名和剛才新建的倉庫名,回車完之后進入.git,打開config,這里會多出一個remote “origin”內容,這就是剛才添加的遠程地址,也可以直接修改config來配置遠程地址

與github界面上的對應

提交上傳

   1).接下來就今天重頭戲了是將本地項目上傳到github,然后在git bash中輸入如下命令:

$ git add . 

$ git commit -m "first commit"

 上述代碼解釋:git add . 將工作區代碼添加到待提交區 ,git add . 是將所有提交,   git commit -m "上傳代碼的注釋"  是將代碼從待提交區提交到本地,截屏如下:

如果提交代碼越多執行commit語句加載越多,千萬別驚慌哈   < _ >

  2).從遠程拉取一下代碼 ,此步操作可以沒有,但我個人而言最好加上,是為了不讓產生沖突,如果沒事 也就多寫一行代碼而已,如果少了這步出現沖突就不划算了 ,哈哈   是吧 ,所以我個人是習慣都加上

$ git pull origin master

git pull origin master 是從遠程服務器拉取代碼到本地倉庫

 

  3).push到github

$ git push origin master

git push origin master 是從本地倉庫推送代碼到遠程服務器

 

提交上傳完成!

到此我們就大功告成了,現在去查看你的github中的倉庫發現項目已經上去了,現在你知道如何將本地的項目提交到github上了

 

在此分享git命令:

 查看、添加、提交、刪除、找回,重置修改文件

git help <command> # 顯示command的help

git show # 顯示某次提交的內容 git show $id

git co -- <file> # 拋棄工作區修改

git co . # 拋棄工作區修改

git add <file> # 將工作文件修改提交到本地暫存區

git add . # 將所有修改過的工作文件提交暫存區

git rm <file> # 從版本庫中刪除文件

git rm <file> --cached # 從版本庫中刪除文件,但不刪除文件

git reset <file> # 從暫存區恢復到工作文件

git reset -- . # 從暫存區恢復到工作文件

git reset --hard # 恢復最近一次提交過的狀態,即放棄上次提交后的所有本次修改

git ci <file> git ci . git ci -a # 將git add, git rm和git ci等操作都合並在一起做 git ci -am "some comments"

git ci --amend # 修改最后一次提交記錄

git revert <$id> # 恢復某次提交的狀態,恢復動作本身也創建次提交對象

git revert HEAD # 恢復最后一次提交的狀態

 

查看文件diff

git diff <file> # 比較當前文件和暫存區文件差異 git diff

git diff <id1><id2> # 比較兩次提交之間的差異

git diff <branch1>..<branch2> # 在兩個分支之間比較

git diff --staged # 比較暫存區和版本庫差異

git diff --cached # 比較暫存區和版本庫差異

git diff --stat # 僅僅比較統計信息

 

查看提交記錄

git log git log <file> # 查看該文件每次提交記錄

git log -p <file> # 查看每次詳細修改內容的diff

git log -p -2 # 查看最近兩次詳細修改內容的diff

git log --stat #查看提交統計信息

 

Git 本地分支管理
  查看、切換、創建和刪除分支

git br -r # 查看遠程分支

git br <new_branch> # 創建新的分支

git br -v # 查看各個分支最后提交信息

git br --merged # 查看已經被合並到當前分支的分支

git br --no-merged # 查看尚未被合並到當前分支的分支

git co <branch> # 切換到某個分支

git co -b <new_branch> # 創建新的分支,並且切換過去

git co -b <new_branch> <branch> # 基於branch創建新的new_branch

git co $id # 把某次歷史提交記錄checkout出來,但無分支信息,切換到其他分支會自動刪除

git co $id -b <new_branch> # 把某次歷史提交記錄checkout出來,創建成一個分支

git br -d <branch> # 刪除某個分支

git br -D <branch> # 強制刪除某個分支 (未被合並的分支被刪除的時候需要強制)

 

 分支合並和rebase

git merge <branch> # 將branch分支合並到當前分支

git merge origin/master --no-ff # 不要Fast-Foward合並,這樣可以生成merge提交

git rebase master <branch> # 將master rebase到branch,相當於: git co <branch> && git rebase master && git co master && git merge <branch>

 

 Git補丁管理(方便在多台機器上開發同步時用)

git diff > ../sync.patch # 生成補丁

git apply ../sync.patch # 打補丁

git apply --check ../sync.patch #測試補丁能否成功

 

 Git暫存管理

git stash # 暫存

git stash list # 列所有stash

git stash apply # 恢復暫存的內容

git stash drop # 刪除暫存區
 Git遠程分支管理
git pull # 抓取遠程倉庫所有分支更新並合並到本地

git pull --no-ff # 抓取遠程倉庫所有分支更新並合並到本地,不要快進合並

git fetch origin # 抓取遠程倉庫更新

git merge origin/master # 將遠程主分支合並到本地當前分支

git co --track origin/branch # 跟蹤某個遠程分支創建相應的本地分支

git co -b <local_branch> origin/<remote_branch> # 基於遠程分支創建本地分支,功能同上


git push # push所有分支

git push origin master # 將本地主分支推到遠程主分支

git push -u origin master # 將本地主分支推到遠程(如無遠程主分支則創建,用於初始化遠程倉庫)

git push origin <local_branch> # 創建遠程分支, origin是遠程倉庫名

git push origin <local_branch>:<remote_branch> # 創建遠程分支

git push origin :<remote_branch> #先刪除本地分支(git br -d <branch>),然后再push刪除遠程分支


Git遠程倉庫管理

git remote -v # 查看遠程服務器地址和倉庫名稱

git remote show origin # 查看遠程服務器倉庫狀態

git remote add origin git@ github:robbin/robbin_site.git # 添加遠程倉庫地址

git remote set-url origin git@ github.com:robbin/robbin_site.git # 設置遠程倉庫地址(用於修改遠程倉庫地址) git remote rm <repository> # 刪除遠程倉庫


創建遠程倉庫

git clone --bare robbin_site robbin_site.git # 用帶版本的項目創建純版本倉庫

scp -r my_project.git git@ git.csdn.net:~ # 將純倉庫上傳到服務器上

mkdir robbin_site.git && cd robbin_site.git && git --bare init # 在服務器創建純倉庫

git remote add origin git@ github.com:robbin/robbin_site.git # 設置遠程倉庫地址

git push -u origin master # 客戶端首次提交

git push -u origin develop # 首次將本地develop分支提交到遠程develop分支,並且track

git remote set-head origin master # 設置遠程倉庫的HEAD指向master分支


也可以命令設置跟蹤遠程庫和本地庫

git branch --set-upstream master origin/master

git branch --set-upstream develop origin/develop

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM