使用先前的提交在git中恢复移动文件夹上的文件历史记录

时间:2014-03-17 16:14:09

标签: git version-control github

我有一个git存储库,其中所有文件都从一个文件夹移动到另一个文件夹。这导致历史记录的所有丢失(这是之前的一些提交)。

我可以使用

查看这些文件的历史记录
 git log --follow

但希望历史记录显示为' normal'。

我意识到我无法恢复'这些文件的历史记录为git将移动视为 delete add ,并且有许多StackOverflow对此影响的答案。

但是,我想知道是否存在可以让我恢复历史的工作流程(可能涉及旧提交的分支)?

我正在考虑这方面的事情(虽然我无法在最后一步没有很多冲突的情况下完成这个确切的过程):

  1. 在移动之前签出提交
  2. 从此提交分支并使用git mv
  3. 正确移动文件
  4. 将此分支合并/快进到当前的主要提示
  5. 这样的事情可能吗?

1 个答案:

答案 0 :(得分:0)

如果它在历史记录中不太远,您可以检查提交,而不是重命名该文件夹使用以下命令:

git mv oldDirectoryName newDirectoryName,它会保留历史记录并手动应用更改。

关于第三点我没有尝试过类似的东西,但是stackoverflow上的一个线程实际上处理了类似的问题