Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.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 是否可以将更改的文件传输到Subversion中的另一个工作文件夹_Svn - Fatal编程技术网

Svn 是否可以将更改的文件传输到Subversion中的另一个工作文件夹

Svn 是否可以将更改的文件传输到Subversion中的另一个工作文件夹,svn,Svn,我有一个问题:如果我有一个指向头部修订的工作文件夹。如果我对工作文件夹做了一些更改,那么将这些更改移动到指向相同修订号的另一个工作文件夹的最简单方法是什么。 也就是说,如何创建工作文件夹的精确副本,包括我所做的更改 在某个时候,我使用了一个版本控制系统,它可以做我想做的事情,将更改复制到一个cmd文件中,然后在另一个工作文件夹中执行。它称之为“变更列表”,与SVN变更列表不同 谢谢你的帮助 Jeeji您可以执行一个svn diff并将结果传输到一个文件。然后,您可以转到新的WC并执行patch命

我有一个问题:如果我有一个指向头部修订的工作文件夹。如果我对工作文件夹做了一些更改,那么将这些更改移动到指向相同修订号的另一个工作文件夹的最简单方法是什么。 也就是说,如何创建工作文件夹的精确副本,包括我所做的更改

在某个时候,我使用了一个版本控制系统,它可以做我想做的事情,将更改复制到一个cmd文件中,然后在另一个工作文件夹中执行。它称之为“变更列表”,与SVN变更列表不同

谢谢你的帮助
Jeeji

您可以执行一个
svn diff
并将结果传输到一个文件。然后,您可以转到新的WC并执行
patch
命令重新应用它们(然后使用
svn commit
提交它们)

这只适用于文件;像重命名文件或删除目录这样的事情不会在这样的文件中出现


在Windows上,您可以使用OrtoiseSVN,它有图形工具来为您做这类事情;在命令行上查看上述命令的手册页。

使用
svn diff

svn diff > ~/changes.diff
并将修补程序应用于另一个工作副本

patch -p0 -i ~/changes.diff

最简单的方法当然是在文件系统级别复制整个工作副本,创建一个新的工作副本

但是我认为
svn copy path/to/old/wc path/to/new/wc
也应该可以工作(同时创建一个新的工作副本)


不过,我还没有测试后者,所以您应该首先使用工作副本的虚拟副本进行测试

我想复印一份工作副本。但是工作副本不包含特定于工作副本位置的信息吗?如果没有,那么我想这是可能的。您是否有将工作副本复制到其他位置的经验?JeejiI想补充一点,我也需要副本在另一台机器上工作。因此,如果“.svn”也包含有关机器的信息,那么它将无法工作。我想它没有理由这么做,但谁知道呢。请让我知道你对这个项目的了解matter@Jihad:否,工作副本不包含有关路径(或机器)的信息。事实上,我经常复制工作副本,从未遇到任何问题。我经常在需要中断某项工作(例如,某项功能)以处理其他工作(通常是错误修复)时这样做。我复制了一份已开始的工作(在功能部件上),恢复了我制作副本的工作副本中的所有更改,然后从头开始工作。稍后,我回到我制作的副本,继续(使用该功能)我离开的地方。@Jihad:sbi是对的。我经常复印工作副本。一种常见的情况是,您与存储库的连接速度较慢,需要在不同的分支中工作。不签出整个分支,而是复制计算机中的现有工作副本,然后svn切换到要工作的分支(之前执行svn还原以清理工作副本)