背景
- 经理建立仓库, 并第一次提交.
- tom
clone
并添加文件.push
不上去, 合并(pull
)时报历史不一致问题.
问题
git status
发现: Your branch and 'origin/master' have diverged
解决
// tom的命令行
git fetch
git reset --hard origin/master // 回退到最初状态
git reflog
// 经理的命令行
git reflog
// 可以发现两者现在的版本号一致了.
经过上述操作, 应该就是将两个用户的历史记录统一了. 多用户协同开发, 应该保证每个用户的提交记录一样(个人理解), 否则就会出现分支不一致, push
不上去的问题.
除了上述解决办法外, 还有简单粗暴的做法, 但是个人不建议.
当提示分歧时会提示, 需要先git pull
, 即将远程与本地合并, 但是这样会出现历史记录不一致问题. 这时可以用以下命令, 强行合并(忽略不相关历史).
pull origin master --allow-unrelated-histories
这样, 应该是会丢失当期那分支的历史记录.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。