[轉載]::Github進行fork後如何與原倉庫同步

step 1、進入到本地倉庫的目錄。

下面所有操作,如無特別說明,都是在你的本地倉庫的目錄下操作。比如我的本地倉庫爲/from-liujuanjuan-the-craft-of-selfteaching

step 2、執行命令 git remote -v 查看你的遠程倉庫的路徑:

如果只有上面2行,說明你未設置 upstream (中文叫:上游代碼庫)。一般情況下,設置好一次 upstream 後就無需重複設置。

step 3、執行命令 git remote add upstream https://github.com/selfteaching/the-craft-of-selfteaching.git 把 xiaolai 的倉庫設置爲你的 upstream 。這個命令執行後,沒有任何返回信息;所以再次執行命令 git remote -v 檢查是否成功。

step 4、執行命令 git status 檢查本地是否有未提交的修改。如果有,則把你本地的有效修改,先從本地倉庫推送到你的github倉庫。最後再執行一次 git status 檢查本地已無未提交的修改。

git add -A 或者 git add filename git commit -m "your note" git push origin master git status

注1:這一步作爲新手,建議嚴格執行,是爲了避免大量無效修改或文本衝突帶來的更復雜局面。

注2:如果你已經在fork後的倉庫提交了大量對 xiaolai 的倉庫並沒有價值的修改,那麼想要pull request,還是重新回到本文最初的“最省事辦法”吧。

merge 的關鍵命令

以下操作緊接着上面的步驟。

step 5、執行命令 git fetch upstream 抓取 xiaolai 原倉庫的更新:

step 6、執行命令 git checkout master 切換到 master 分支:

step 7、執行命令 git merge upstream/master 合併遠程的master分支:

step 8、執行命令 git push 把本地倉庫向github倉庫(你fork到自己名下的倉庫)推送修改

如果擔心自己不小心改了哪裏,可以再次執行命令 git status 檢查哪些文件有變化。這個操作僅是檢查,不會改變任何狀態,放心用。

現在你已經解決了fork的倉庫和原倉庫版本不一致的問題。可以放心向 xiaolai 發起 pull request 了。如果以上操作你花了不少時間,而 xiaolai 的倉庫 又恰好更新了。很好,一次新的練習機會來了……


https://zhuanlan.zhihu.com/p/89607964

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