合并GIT中的问题 - 合并提交中的文件更改在提交后从分支中消失

时间:2015-07-14 16:21:38

标签: git version-control merge atlassian-sourcetree

我们有一个名为 BranchMaster 的分支。我们过去常常将代码从同一个代码下载到名为 BranchDev 的另一个分支。

最近我们已经从 BranchMaster BranchDev 进行了深入研究。在合并提交中,它有很多文件更改。之后,分支 BranchDev 中发生了大量提交。其中一个提交是合并提交,另一个提交由我团队中的其他人完成。在最后一次合并提交之后,第一次合并提交中的所有文件更改都将消失。我不知道为什么/如何。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

如果有文件被删除,请使用git blame --reverse <old_commit>..<new commit> <name of file>

要查找已删除的行,如果您知道它们的用途,可以使用git log -S <deleted string> <filename>

使用git reflog也是一个选项,但它只能帮助查找已删除的提交。作为新提交的一部分删除代码与删除提交不同。您应该检查reflog条目是否已过期或已清除。

答案 1 :(得分:0)

使用sourcetreegit reflog 检查哪个提交负责删除文件。

此外,您可以随时撤消任何提交。执行以下操作。

git reset --hard HEAD@<i>

这将为您提供所提交作品的头部列表。您可以通过键入以下命令来还原任何提交。

format()