【Github】Github里處理別人向你提交的pull requests


  一般都是我folk別人,所以現在別人folk我之后,並向我提交了pull request,有點不知所措,所以小小研究了下。
  比如現在mygoare fork了我的項目,修改后提交了pull request。我可以在github上看到他的pull request,GitHub如果檢測到Pull Request中包含的提交可以直接合並,會顯示自動合並的提示信息。點擊“Confirm Merge”按鈕即完成Pull Request中所含提交的自動合並。自動合並完成后,自動關閉Pull Request。
  實際上在很多情況下,Pull Request所含提交有可能造成合並沖突,那樣的話GitHub不再、也不能提供自動合並功能,就必須采用手工合並的方式。
 
創建分支
$ git checkout -b mygoare-master master
 
現在有個mygoare-master 分支,並且現在在這個分支上
 
從mygoare的遠端拉下來,有沖突,無法自動合並,須手動合並
$ git pull git://github.com/mygoare/lehuo.git master
 
查看狀態(現在所在分支,兩個版本沖突的文件)紅色的為有沖突的文件
$ git status
 
可以查看沖突之處
$ git diff
 
用編輯器打開相應文件修改
例如homepage.html
<<<<<<< HEAD
我的代碼(多一個box-shadow)
=======
mygoare的代碼
>>>>>>> b8f7a4ef57ef38eefb24ff987a8c2e51a1a30b9e
 

選擇其一保留,得如下
 
 
改完所有沖突后,就沒有紅色沖突了
$ git add -A
$ git status
 
提交到本地
$ git commit -m "merge mygoare's code"
 
因為現在在mygoare-master分支上,需要切換到我的master
$ git checkout master
 
合並mygoare-master到我的master上
$ git merge mygoare-master
 
提交到遠端
$ git push
 
提交成功
 
github的pull requests自動變為0
 
 
 /*********************************************************/
補充:
查看分支,帶星綠色的是現在所處的分支
$ git branch
 
刪除分支mygoare,這個是之前測試用的
$ git branch -D mygoare
 

添加遠端地址,遠端名任意起
$ git remote add mygoare https://github.com/mygoare/lehuo.git
 
查看遠端
$ git remote -v
 
獲取mygoare的內容
$ git fetch mygoare
 
合並
$ git merge mygoare/master
 
查看提交說明,看到此次合並沒有產生不必要的合並提交。
$ git log --graph -2
 

≡≡≡≡≡≡≡≡≡≡★ From Laker's blog ★≡≡≡≡≡≡≡≡≡≡

¤ ╭⌒╮☀Coding and changing~☀ ╭╭ ⌒╮

✪Fighting and insisting~✪


免責聲明!

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



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