Git Merge分支具有不同的文件结构

时间:2014-08-19 08:54:34

标签: git github merge

我有一个关于重构git文件结构并在新旧结构之间进行合并的问题。 'import_branch'用于将源文件从另一个verion控制系统移动到git。 'new_layout'是git中三个源文件的重构。

'import_branch'     ->      'new_layout'
- app/file1.txt     ->      - application/file1.txt
- fw/file2.txt      ->      - system/fw/file2.txt

我做了什么:

  • 在'import_branch'
  • 中提交了所有内容
  • 将文件复制到'new_layout'(清理存储库)。
  • git checkout'new_layout'
  • git mv app application
  • git mv fw system / fw

现在我想将'import_branch'中的更改合并到'new_layout'

  • git checkout'import_branch'
  • 让我们说文件app / file1.txt
  • 有变化
  • 在'import_branch'
  • 中提交更改
  • git checkout'new_layout'
  • git cherry-pick -x(最新'import_branch'提交SHA)

这样可行,'app / file1.txt'中的更改将合并到'application / file1.txt'

问题

但是,如果我在'import_branch'中添加一个新文件,请说:'fw / file3.txt',这将成为'new_layout'分支中的'fw / file3.txt',而不是'system / fw / file3.txt ”。新文件结构的链接不是保留的。

如何让git在合并期间跟踪旧文件结构和新文件结构?

提前致谢

0 个答案:

没有答案