【问题标题】:Fix differences between two branches after git merge修复 git merge 后两个分支之间的差异
【发布时间】:2019-11-19 09:39:50
【问题描述】:

我加入了一个项目,其中master分支有一段时间没有动过。开发发生在另一个分支上,没有偶尔合并。现在我想重新确立一个想法,即拥有一个用于稳定代码的主分支和一个用于持续工作的开发分支。

因此,我合并了开发分支并解决了冲突,但注意到分支之间的差异仍然存在。开发分支中大约有 40 个文件未被 git merge 考虑在内。 Differences between 2 branches after merge: GIT 中的解释似乎是合法的,但现在我的问题是:

如何解决差异并将缺少的文件从develop分支带入master分支?

【问题讨论】:

    标签: git


    【解决方案1】:

    显然,这已作为更广泛问题的一部分被问及并得到了回答。以下是总结性解决方案的出处:Git Merge - Incomplete, Missing files and Folders

    如上面的解释链接中所述,丢失的文件已在某个时候在 master 分支中被删除。恢复它们的方法是从日志历史记录中恢复这些文件。

    从原始帖子中获取点点滴滴,这就是我所做的:

    git checkout master
    git diff developBranch --name-status |grep D > ~/deleted_files
    git log --name-status > ~/file_history
    cat ~/deleted_files | awk '{ print $2 }' | xargs -I haha git checkout developBranch haha
    git commit -m 'Restore deleted files...'
    

    感谢以上链接中的 Quang Van、Walter Mundt 和 John Wu。

    【讨论】:

      猜你喜欢
      • 2012-08-20
      • 2012-10-06
      • 2021-01-01
      • 2021-07-05
      • 1970-01-01
      • 2012-01-18
      • 1970-01-01
      • 2012-04-07
      • 2022-08-15
      相关资源
      最近更新 更多