157 我不小心运行svn add *并添加了不应在存储库中的一堆文件。我还想保留一些文件中的本地编辑内容。是否有一种简单的方法来撤消svn add而不恢复本地编辑?我在Google上看到的主要建议是svn revert,该建议可能会撤消本地编辑。 svn — 琼德里 source
282 那将是: svn rm --keep-local 这样的事情我也经历过。:-P 许多人评论您应该使用: svn rm --keep-local FILENAME 将命令应用于一个或多个文件,而不是所有文件,这可能会产生意想不到的副作用。 — 1935年 source 1 这对我没有影响。我从基本文件夹中运行了上述代码(包括尾随时间)。不知道我是否想念一些东西。 — zzz 2012年 8 请注意,您必须将文件名添加到命令中,这样就可以了svn rm --keep-local FILENAME。在FILENAME可以使用*来匹配多个文件(如果你幸运地拥有一个模式)。 — 亚当·巴杜拉 4 警告!-在使用svn externals的同时使用此命令也将删除所有连接的外部... — kostja,2013年 2 如果提交,提交是否不包括从存储库中删除有问题的文件? — jwg 2014年 1 //,我和jwg有相同的问题。我对SVN受控文件进行了一些编辑。我想将这些编辑保留在本地。但是,我并不想完全从仓库中删除文件。我只是不想将本地编辑推送到文件中。 — 弥敦道(Nathan Basanese)2015年
34 如果这些文件位于尚未提交的目录下,则可以通过执行以下操作从下一次提交中删除整个目录内容: svn delete --keep-local /path/to/directory 但是,如果这些文件已在存储库中,并且现在包含您不想提交的更改,则可以使用更改列表来提交其余文件: svn changelist somename /file/to/be/committed svn commit --changelist somename — Juampy NR source
7 您可以通过以下方式来解决结帐问题: 备份本地文件 还原SVN结帐 恢复文件 -- rsync -av --exclude .svn/ YOURDIR/ YOURDIR.bak svn revert -R YOURDIR rsync -av YOURDIR.bak/ YOURDIR — 布莱斯·登普西 source YOURDIR/YOURDIR/尽管我认为问题出在最初的备份命令create中,但最终命令总是创建一个额外的目录级别,即以结尾YOURDIR.bak/YOURDIR/。 — 詹姆斯 为避免这种情况,rsync要求在源目录上添加一个斜杠。我编辑了答案。 — 布莱斯·登普西
3 我有同样的问题,我不小心添加了一个/ bin目录svn add,其中包含二进制文件和已编译的文件。该命令实际上删除目录。 svn rm --force <directory-name> 就我而言,我不需要目录,因此可以安全删除。如果要保留文件/目录的保存,则在应用命令之前以及将它们复制回之后保存到某个位置 — 普希亚 source