Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以在SVN中保存文件之间代码移动的历史记录?_Svn - Fatal编程技术网

是否可以在SVN中保存文件之间代码移动的历史记录?

是否可以在SVN中保存文件之间代码移动的历史记录?,svn,Svn,在SVN版本的项目中,我需要进行重构,将代码从一个文件移动到另一个文件。不移动或重命名整个文件,而是将部分文件拆分为另一个新文件 我想保留该代码的历史记录,包括在移动之前所做的更改。默认情况下,Svn只是认为这是从一个文件中删除的一些行,并添加到另一个文件中的一些其他行,但认为这些完全无关。 有没有办法将整个变更历史记录保存在一起 为了获得更多的细节,我正在寻找类似的东西,但是是SVN而不是Git。 而不是类似的情况,我已经知道并引用了另一种情况。要将一段代码移动到新文件,我通常使用下一种方法:

在SVN版本的项目中,我需要进行重构,将代码从一个文件移动到另一个文件。不移动或重命名整个文件,而是将部分文件拆分为另一个新文件

我想保留该代码的历史记录,包括在移动之前所做的更改。默认情况下,Svn只是认为这是从一个文件中删除的一些行,并添加到另一个文件中的一些其他行,但认为这些完全无关。 有没有办法将整个变更历史记录保存在一起

为了获得更多的细节,我正在寻找类似的东西,但是是SVN而不是Git。

而不是类似的情况,我已经知道并引用了另一种情况。

要将一段代码移动到新文件,我通常使用下一种方法:

  • 将文件复制到新文件(svn cp…)
  • 在新文件中,删除除已移动代码以外的所有代码
  • 在旧文件中删除移动的代码段

然后(通常)对移动代码的指责将显示正确的作者。

对于将一段代码移动到新文件,我通常使用下一种方法:

  • 将文件复制到新文件(svn cp…)
  • 在新文件中,删除除已移动代码以外的所有代码
  • 在旧文件中删除移动的代码段

然后(通常)对移动代码的指责将显示正确的作者。

对于将一段代码移动到新文件,我通常使用下一种方法:

  • 将文件复制到新文件(svn cp…)
  • 在新文件中,删除除已移动代码以外的所有代码
  • 在旧文件中删除移动的代码段

然后(通常)对移动代码的指责将显示正确的作者。

对于将一段代码移动到新文件,我通常使用下一种方法:

  • 将文件复制到新文件(svn cp…)
  • 在新文件中,删除除已移动代码以外的所有代码
  • 在旧文件中删除移动的代码段


然后(通常)责备移动的代码将显示正确的作者。

您正在从一个文件移动的代码是进入新文件还是与其他代码一起存在的文件?
svn 1.8中的svn move
。*是最接近的可能迭代,在这方面没有太大的差异/Git@Ben在我的特殊情况下,它将进入一个新文件(实际上有几个,但基本操作是一样的)@lazybacker据我所知,
svn move
将移动/重命名整个文件,而我只想将一个文件的一部分移动到新文件中,同时保留一些来自其他文件的引用。除非我搞错了或者遗漏了什么,否则这不是我想要的。关于Git的链接帖子说它可以“猜测”1.8.*(更好)甚至1.7.*(更差)中的此类代码移动在历史记录中存储重命名和维护此类文件链接的事实。在提交之前,重命名文件中的更改量是另一回事。另请参见。顺便说一句,在MercurialIs中,将代码从一个文件移动到一个新文件或与其他代码一起存在的文件时,大规模重构将容易得多?
svn move
在svn 1.8中*是最接近的可能迭代,在这方面也没有太大的差异/Git@Ben在我的特殊情况下,它将进入一个新文件(实际上有几个,但基本操作是相同的)@lazybacker据我所知,
svn move
将移动/重命名整个文件,而我只想将一个文件的一部分移动到新文件中,同时保留一些来自其他文件的引用。除非我搞错了或者遗漏了什么,否则这不是我想要的。关于Git的链接帖子说它可以“猜测”1.8.*(更好)甚至1.7.*(更差)中的此类代码移动在历史记录中存储重命名和维护此类文件链接的事实。在提交之前,重命名文件中的更改量是另一回事。另请参见。顺便说一句,在MercurialIs中,将代码从一个文件移动到一个新文件或与其他代码一起存在的文件时,大规模重构将容易得多?
svn move
在svn 1.8中*是最接近的可能迭代,在这方面也没有太大的差异/Git@Ben在我的特殊情况下,它将进入一个新文件(实际上有几个,但基本操作是相同的)@lazybacker据我所知,
svn move
将移动/重命名整个文件,而我只想将一个文件的一部分移动到新文件中,同时保留一些来自其他文件的引用。除非我搞错了或者遗漏了什么,否则这不是我想要的。关于Git的链接帖子说它可以“猜测”1.8.*(更好)甚至1.7.*(更差)中的此类代码移动在历史记录中存储重命名和维护此类文件链接的事实。在提交之前,重命名文件中的更改量是另一回事。另请参见。顺便说一句,在MercurialIs中,将代码从一个文件移动到一个新文件或与其他代码一起存在的文件时,大规模重构将容易得多?
svn move
在svn 1.8中*是最接近的可能迭代,在这方面也没有太大的差异/Git@Ben在我的特殊情况下,它将进入一个新文件(实际上有几个,但基本操作是相同的)@lazybacker据我所知,
svn move
将移动/重命名整个文件,而我只想将一个文件的一部分移动到新文件中,同时保留一些来自其他文件的引用。除非我搞错了或者遗漏了什么,否则这不是我想要的。关于Git的链接帖子说它可以“猜测”1.8.*(更好)甚至1.7.*(更差)中的此类代码移动在历史记录中存储重命名和维护此类文件链接的事实。在提交之前,重命名文件中的更改量是另一回事。另请参见。顺便说一句,在MercurialTanks中,大型重构将容易得多。对于提示,听起来更像是一种解决方法,但它确实有效!我会更仔细地了解代码何时移动到现有文件,当这样做时esn不再剪了。谢谢你的提示,听起来更像是一个解决办法,但它很有效!我想去厕所