仅将已删除的文件提交给subversion

时间:2011-06-14 17:40:35

标签: svn

假设我有一个庞大的工作目录,我正在清理不再使用的代码段。这个过程的一部分是svn delete很多文件。但是,如果我想确保这些文件不再在任何地方被使用,那该怎么办...如果我svn commit它将提交我目前不想测试的所有其他代码更改,如果我尝试svn commit <deleted file list>它说那些文件不受版本控制(我已经对它们进行了svn delete)。

如何仅对svn delete d个文件提交更改?

3 个答案:

答案 0 :(得分:15)

无法重现。

svn commit <list of svn delete'd files>效果很好。

如果您尝试将更改提交到已经svn: <file> is not under version control 并已提交 的文件,则会出现svn delete'd错误。您的列表中是否有错误的文件?

答案 1 :(得分:11)

您也可以使用更改列表 http://svnbook.red-bean.com/en/1.5/svn.advanced.changelists.html

首先,删除文件:

$ svn rm path/to/file1
$ svn rm path/to/file2

然后,将此文件添加到changelist:

$ svn changelist <listname> path/to/file1 path/to/file2

$ svn changelist <listname> path/to/file1
$ svn changelist <listname> path/to/file2

然后您可以提交仅更改列表

$ svn commit --changelist <listname> -m "Comment goes here"
顺便说一下,这样你就可以提交部分中的其他文件了

答案 2 :(得分:0)

您可以在变换,提交中“搁置”您的更改,然后将您的更改从现成的状态恢复到工作目录中。

有关详细信息,请参阅http://markphip.blogspot.com/2007/01/shelves-in-subversion.html

请务必阅读整篇文章并了解正在发生的事情(特别注意“更好的方法”部分)。搁置不是Subversion的“特征”,但它仍然是可能的。