利用git工具實現GitHub遠程倉庫與本地倉庫之間的同步非常重要。如果本地沒有倉庫,這樣可以直接遠程git clone,這是保持同步最簡單的方法;但是如果本地有倉庫並且是多端同步的方式,就不能簡單通過git clone實現。在這裡簡單說明我遇到的情形:
遠程倉庫最新,本地倉庫落後幾個版本:
git fetch方式
在本地倉庫下拉取最新版本,並且請求合併:
1 | git fetch origin # 拉取最新版本 |
這樣就實現了本地代碼庫保持最新版本。
這裡的git status的作用是檢查是不是最新,防止出現衝突。另外還能通過git log查看提交歷史記錄檢查是否衝突:
1 | git log -1 # 本地倉庫最新1條提交 |
查看代碼差異:git diff
1 | git diff HEAD origin/main # 比較本地與遠程倉庫差異,無輸出代表完全同步 |
git 強制回退到某個版本
1 | # 首先獲得git log的提交id(commit 後面的代碼) |
另外還有一種更安全的方法,好處是保留提交記錄
1 | git log |