Git遠程和分支管理


一、遠程
      Git是分布式版本控制系統,最重要的優點就是遠程倉庫托管代碼。不用自己搭建一個服務器,在github上面注冊一個賬戶就可免費獲取遠程倉庫。
     首先需要先在github上面創建倉庫。創建步驟百度google都有。
     第一次推送的時候需要本地庫關聯遠程庫,使用命令git remote add origin git@server-name:path/repo-name.git
origin后面實際上是遠程庫的ssh地址。
     關聯之后,使用命令git push -u origin master第一次推送master分支的所有內容。第一次的時候需要使用 -u,在此后的每一次推送的時候只需要git push origin master就可以了。
     
     當我們第一次開發項目的時候,我們需要從遠程庫獲取別人的代碼,這時候就需要從遠程庫克隆一個本地庫。命令:
$ git clone git@github.com:michaelliao/gitskills.git
     clone后面是git遠程庫ssh的地址
     除了ssh地址之外,也可以使用https的地址。
 
二、分支管理
     git作為分布式版本控制系統,多線共同開發的優點體現在分支的管理上,所有的分支提交情況git的可視化工具都可以很清晰的看得到。git的分支提交和合並十分的快。關鍵在於分支的切換和合並。一般在一個團隊合作的項目中,會創建一個主分支master,master主分支十分穩定,僅用來發布新版本,然后團隊開發都在dev分支上,給每個開發者創建一個分支,各個開發者單獨開發,互不影響,開發者時不時就將開發的功能合並到dev中,然后功能點足夠發布一個新版本之后再將dev合並到master分支,這樣master分支就具備了每個開發者的開發的功能。
  分支管理的流程如下:
     1、合並分支
     比如創建一個叫dev的分支,然后切換到dev分支
          創建分支
$ git branch dev
切換分支git checkout 不使用--的時候是指切換都某分支。
$ git checkout dev
查看所有分支
$ git branch
現在HEAD在dev分支上,然后在dev分支進行提交
$ git add <file>
$ git commit -m "new branch first commit"
這時dev分支的工作結束了,切換回master分支
$ git checkout master
然后這時候需要將dev的內容合並到master分支上
$ git merge dev
這時候就完成了一次分支合並,因為分支的創建和合並都很快,最好的建議是master合並完文件之后建議將其他分支刪除掉,但是如果還在繼續開發的話則不需要了。
刪除分支
$ git branch -d dev

 

     2、分支沖突
          合並分支的時候總會出現沖突, 分支沖突的原因是兩個分支同時做了各自的修改,在合並的時候git就會檢測到合並位置出現了兩種不同的修改,出現沖突的解決辦法是在master修改好沖突文件,然后重新提交就可以了。多人協作沖突,當你要提交到dev的時候發現和其他人的文件修改沖突了,可以先git pull拉取下來,然后再本地合並,解決沖突后再推送。Git用<<<<<<<,=======,>>>>>>>標記出不同分支的內容。
          解決沖突之后可以使用git log命令查看分支合並情況。 
$ git log --graph --pretty=oneline --abbrev-commit


免責聲明!

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



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