Your branch and ‘origin/master’ have diverged

NO IMAGE
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

背景

  • 經理建立倉庫, 並第一次提交.
  • tomclone並新增檔案. push不上去, 合併(pull)時報歷史不一致問題.

問題

git status發現:
Your branch and 'origin/master' have diverged

解決

// tom的命令列
git fetch
git reset --hard origin/master    // 回退到最初狀態
git reflog
// 經理的命令列
git reflog
// 可以發現兩者現在的版本號一致了. 

clipboard.png

經過上述操作, 應該就是將兩個使用者的歷史記錄統一了. 多使用者協同開發, 應該保證每個使用者的提交記錄一樣(個人理解), 否則就會出現分支不一致, push不上去的問題.

除了上述解決辦法外, 還有簡單粗暴的做法, 但是個人不建議.
當提示分歧時會提示, 需要先git pull, 即將遠端與本地合併, 但是這樣會出現歷史記錄不一致問題. 這時可以用以下命令, 強行合併(忽略不相關歷史).

pull origin master --allow-unrelated-histories

這樣, 應該是會丟失當期那分支的歷史記錄.

相關文章

軟體開發工具 最新文章