0x01 與原項目進行同步
在github里,每當fork一個項目后,如何保持與原作者的同步?一般可以以下幾步。
1.首先clone自己,從git獲取自己倉庫的內容。
git clone https://github.com/xxx.git
2.添加遠程倉庫
添加遠程倉庫的別名,獲取遠程倉庫的內容並合並。如果有沖突則需要手動解決沖突。
git remote add username https://github.com/xxx.git
git fetch username
git merge username/master
3.提交改動,推到遠程的master分支。
git commit -m "merge from username-xx"
git push -u origin master
4.查看本地倉庫
git remote -v
git branch -a
0x02 git協同命令
如果是個人產品,不是那種產品需要上線的服務。
當使用git進行協作開發的時候,可以設置好幾個分支,以主分支master為開發版,Release分支為發行版。
而產品類型的git協作時,主分支只用來分布重大版本,日常開發應該在另一條分支上完成。我們把開發用的分支,叫做Develop。
Git創建Develop分支的命令:
git checkout -b develop master
將Develop分支發布到Master分支的命令:
切換到Master分支
git checkout master
對Develop分支進行合並
git merge --no-ff develop
默認情況下,Git執行"快進式合並"(fast-farward merge),會直接將Master分支指向Develop分支。
其他分支:
- 功能(feature)分支
- 預發布(release)分支
- 修補bug(fixbug)分支
0x03 Pull Request
當某個人fork項目后,並推送改動后如何處理?
這時會收到一個open的Pull Request,然后決定是否合並,不合並可以忽略。