老司機帶你玩轉git (四) git的協同合作

大家都知道,git被戲稱爲全球最大的同性的交友平臺.在這裏,不僅能完成各種項目的學習,更能完成各種姿勢的學習(嗚嗚嗚嗚嗚~小火車經過啦).那麼爲了更好的開車(學習).我想我們有必要學習pull request 這種協同合作方式.
pull request 這專業名詞.有點不太好解釋,看字面意思還有點拗口.意思說就說:請求拉去更改?emmmmmm?(不是拉去槍斃?)

當我們從別人的項目發現一個bug時,我們正好可以修改它,但是我們又不具備操作別人的倉庫的權限.如果推送我們的操作到別人的倉庫,就會出現以下的錯誤.

remote: Permission to EasySoftwareLicensing/software-licensing-php.git denied to [email protected]
fatal: unable to access 'https://github.com/xxxx/xxxx.git/': The requested URL returned error: 403

那怎麼辦呢?那就可以通過pull request啦.我們可以fork別人的項目,然後clone項目到本地,本地完成修復bug的操作,push到我們遠程倉庫.然後我們在遠程上通過pull request,提交請求告訴別人:”嘿,我發現了你們項目一個bug並修復好了,請求把這次修復併入到你們項目中去.”然後別人看見這個請求,如果同意的話,merge之後,你就完成了一次pull request了.其實這個過程就是協同合作,也就我們通常所說的在github上完成自己的貢獻.

那我們下面就說說 怎麼開車 哦不 怎麼學習這種開車的姿勢 哦不 怎麼學習 pull request
爲完成示範,我們假定了有兩個用戶,一個小明,一個小陳.小陳要和小明進行協同合作,就需要fork小明的倉庫.
1.fork小明的倉庫
fork
fork中
這裏寫圖片描述
小陳發現了url地址欄的變化以及有提示的變化
這裏寫圖片描述
2.小陳clone倉庫到本地
clone
3.在本地中修改代碼
change
4.完成add 以及 commit
git add gitdemo.md
add
git commit
git commit
5.push 修改到小陳的遠程倉庫裏
git push origin master
push
遠程倉庫查看
look1
look2
6.小陳倉庫完成pull request
pull request 1
注意查看pull request 的信息
pull request 2
pull request 3
小明登錄賬號後查看遠程倉庫的信息
pull request 4
小明對小陳的pull request 進行merge
PS:當merge出現衝突了,請先解決掉衝突,然後merge.
如果出現了衝突,請參考以下步驟.

    Step 1: From your project repository, check out a new branch and test the changes.
git checkout -b SquirrelWorkpace-master master
git pull https://github.com/SquirrelWorkpace/gitdemo.git master
Step 2: Merge the changes and update on GitHub.
git checkout master
git merge --no-ff SquirrelWorkpace-master
git push origin master

pull request 5
merge之後的結果,如果對結果不滿意,或者後悔了,需要重新來,可以點擊那個revert按鈕.啊哈哈哈哈.
pull request 6

完結撒花

到這了,就可以下車了.同志們,可以下車了.因爲接下來,不是開去幼兒園的車.(逃)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章