前言
熱衷于開源項(xiàng)目的同學(xué)秫筏,想要參與別人的項(xiàng)目莫杈。只能先fork 然后再提PR互例,但是,fork 的倉庫并不會隨著別人倉庫的更新而更新筝闹,需要自己手動同步媳叨,有些同學(xué)使用git,這里其實(shí)github有更傻瓜化的操作关顷。
類似的教程知乎上有糊秆,但是不是太清楚,只是教給同學(xué)們依葫蘆畫瓢议双,并沒有告訴大家每一步操作的意義痘番。又因?yàn)镚ithub 一個(gè)設(shè)定的不合理性,導(dǎo)致我昨天給別人提了很多無效的PR平痰。哈哈哈
基本原理
自己完成的代碼想要添加到別人的倉庫汞舱,需要PR 給別人。
自己fork的倉庫宗雇,想要更新昂芜,就需要給自己提的fork的倉庫PR !赔蒲!
圖解操作
注意這是在自己fork 的倉庫泌神,這里以微信小程序開源的部分為例,點(diǎn)擊pull request
注意嘹履,左邊是需要修改的庫腻扇,應(yīng)該是自己的倉庫。右邊是要參考的倉庫砾嫉,如果不對就需要下拉切換
選擇自己的倉庫后幼苛,發(fā)現(xiàn)變成了這樣。注意焕刮,此時(shí)還是自己的倉庫舶沿。比對的也是相同的分支墙杯。所以沒有變化,點(diǎn)擊右上角
compare across forks
(比對了微信的倉庫發(fā)現(xiàn)和當(dāng)初fork的倉庫沒變化括荡,尷尬高镐。所以換了個(gè)倉庫)這個(gè)時(shí)候左邊是我的倉庫,右邊是目標(biāo)倉庫畸冲,分支也是dev對應(yīng)主倉庫的develop嫉髓。
注意,Github每一個(gè)下拉操作都會重新請求一次數(shù)據(jù)邑闲,導(dǎo)致如果你因?yàn)榫W(wǎng)速卡算行,單身三十年手速,同時(shí)切換了兩個(gè)下標(biāo)苫耸,其實(shí)只完成了一次數(shù)據(jù)請求州邢,因此需要格外注意。
ok 給自己的倉庫提PR完成了褪子,現(xiàn)在合并這個(gè)PR就完成了fork倉庫同步的請求量淌,并且這個(gè)界面還會展示文件變更的部分,是不是特別方便呢
最后
Github是一個(gè)遠(yuǎn)程倉庫嫌褪,并沒有取代Git的作用呀枢,如果想要了解兩者的區(qū)別,建議學(xué)習(xí)廖雪峰老師的Git教程渔扎。
Github也因?yàn)槟承┠Х▽?dǎo)致連接不是很好硫狞,上傳數(shù)據(jù)和下載通過客戶端很容易失敗信轿,本地還是建議大家使用GIt
就是這樣 :)