我有源文件A
,它越来越长并且包含两个大类。我想将其拆分为文件A
,并B
保留历史记录和“责备”数据。
在 Subversion 中,这很容易:执行svn copy A B
,删除A
应该只在其中的行,B
反之亦然,然后提交。但是项目的所有者很遗憾地想要切换到 Git,这是我不知道该怎么做的工作流程之一。
当你这样做时svn log B
,你会得到B
's 分裂后的历史,加上A
' 分裂前的历史。此外,svn blame B
会将拆分前的更改归因于 历史中的正确作者A
,而不是将其归因于进行拆分的任何人。