【发布时间】:2017-03-09 10:18:31
【问题描述】:
在我们的项目中,使用 master 和 develop 分支,直接在 master 上进行了提交(只有三个文件,这些更改也在 develop 分支上)。
现在我需要将develop合并到master,但我不能,因为master的历史现在与develop“脱节”,我收到以下错误:fatal: refusing to merge unrelated histories。
我在 master 上创建了一个reset commit hard,因为我不想在本地保留上次提交的更改,因为这些更改已经在开发中。
但是,在还原后,本地 master 分支提前 600 次更改,落后 1066 次。
为什么会有如此多的变化?我希望本地 master 分支根本不会落后,因为 revert 会将指针移动到上一个提交。
它是否计算从一开始就在 master 分支上进行的所有推/拉操作(通过拉操作我仍然收到错误 fatal: refusing to merge unrelated histories)?
【问题讨论】:
-
Reset 移动指针,revert 创建一个新的提交。你做了哪一个?
-
我做了一个还原(“使用 sourceTree 将当前分支还原到这个提交”)
-
你能显示 SourceTree 显示的提交图的屏幕截图吗?
-
你使用的是哪个 Git 版本?
-
“不相关的历史”意味着您当前的分支和另一个分支根本没有共同的提交。通常这是组合不相关的存储库或运行
git filter-branch一直到根提交的结果。
标签: git branching-and-merging git-revert