參考鏈接:https://blog.csdn.net/chailyuan/article/details/53292031
在下載一個較大的github項目以后,當該項目代碼更新以后,我們想將更新的內容與本地的代碼同步。這次終於找到一個可用的方法,趕緊記錄一下。
0x01 查看遠程分支
使用如下命令可以查看遠程倉庫(我這里有一個origin倉庫)
$ git remote -v origin git@github.com:username/Animations.git (fetch) origin git@github.com:username/Animations.git (push)
0x02 從遠程獲取最新版本到本地
使用如下命令可以在本地新建一個temp分支,並將遠程origin倉庫的master分支代碼下載到本地temp分支
$ git fetch origin master:temp remote: Counting objects: 18, done. remote: Compressing objects: 100% (6/6), done. remote: Total 11 (delta 3), reused 0 (delta 0) Unpacking objects: 100% (11/11), done. From github.com:username/Animations * [new branch] master -> temp c07bdc7..40f902d master -> origin/master
0x03 比較本地倉庫與下載的temp分支
使用如下命令來比較本地代碼與剛剛從遠程下載下來的代碼的區別:
$ git diff temp diff --git a/README.md b/README.md deleted file mode 100644 index 76699ed..0000000 --- a/README.md +++ /dev/null @@ -1,6 +0,0 @@ -Animations
0x04 合並temp分支到本地的master分支
對比區別之后,如果覺得沒有問題,可以使用如下命令進行代碼合並:
$ git merge temp Updating c07bdc7..40f902d Fast-forward README.md | 6 ++++++ src/cn/exercise/animations/MainActivity.java | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 README.md
0x05 刪除temp分支
如果temp分支不想要保留,可以使用如下命令刪除該分支:
$ git branch -d temp
Deleted branch temp (was 40f902d).
如果該分支的代碼之前沒有merge到本地,那么刪除該分支會報錯,可以使用git branch -D temp強制刪除該分支。