一、遠端 Git是分布式版本控制系統,最重要的優點就是遠端倉庫托管代碼。不用自己搭建一個伺服器,在github上面注冊一個賬戶就可免費擷取遠端倉庫。 首先需要先在github上面建立倉庫。建立步驟百度google都有。 第一次推送的時候需要本地庫關聯遠端庫,使用指令git remote add origin [email protected]:path/repo-name.git origin後面實際上是遠端庫的ssh位址。 關聯之後,使用指令git push -u origin master第一次推送master分支的所有内容。第一次的時候需要使用 -u,在此後的每一次推送的時候隻需要git push origin master就可以了。 當我們第一次開發項目的時候,我們需要從遠端庫擷取别人的代碼,這時候就需要從遠端庫克隆一個本地庫。指令:
$ git clone [email protected]: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
轉載于:https://www.cnblogs.com/liusxg/p/5432444.html