将目录从一个分支关联到git中另一个分支的不同目录

时间:2016-12-11 22:19:27

标签: git branch git-merge

我有两个不同的分支。较新的分支已完全更改其目录结构。

它类似于:

Old branch:
project/
    manager/
        widgets/
        components/
        workers/

New branch:
factory/
    widgets/
    components/
    workers/

Git识别了一些但不是所有的目录更改,因此当我将旧分支中所做的更改合并到较新的分支时,它会识别出它们应该在较新分支的相应目录中进行。

例如,如果我在project/manager/widgets/utils.py上的旧分支中修复错误,它也会在factory/widgets/utils.py上更新。

但是,由于某些原因,某些相应的目录没有关联。因此,当我进行合并时,有许多文件在较新的分支中标记为已删除。因此,例如,如果我在旧分支中对project/manager/workers/base.py合并报告进行了改进:

  

CONFLICT(修改/删除):在HEAD中删除project / manager / workers / base.py并在旧分支中修改。项目/ manager / workers / base.py的旧版分支留在树中。

我想知道是否有某种方式可以指示git文件夹project/manager/workers/factory/workers相同。

1 个答案:

答案 0 :(得分:0)

一个woprkaround是第一次制作:

  • 从合并的源分支开始的临时分支
  • 执行series of git mv以手动将文件夹结构转换为目标分支中的文件夹结构
  • 然后将临时重构分支合并到目标分支