如何在 SVN 中查找文件被删除/移动的所有提交(修订号)

Posted

技术标签:

【中文标题】如何在 SVN 中查找文件被删除/移动的所有提交(修订号)【英文标题】:How to find all commits (revision numbers) in which a file was deleted/moved in SVN 【发布时间】:2013-11-19 13:26:04 【问题描述】:

我需要从 SVN 中找到所有已删除的文件。然后检查文件是否需要在完成后恢复。如果是,则恢复。我怎么做。我知道我可以恢复已删除的文件,但这需要修订号。

【问题讨论】:

【参考方案1】:

您可以使用svn log --search(自 SVN 1.8 起提供)查找删除特定文件的修订版,然后将其恢复。

以下命令将查找删除MyProject/MyForm.cs 文件的修订版。

svn log -v --search "MyProject/MyForm.cs" --search-and "D" http://svn.example.com/svn/MyRepository

我没有在 SVNBook 中看到对新 --search 参数的描述,因此包括命令行帮助供您参考(请查看 svn help log 了解更多信息):

 If the --search option is used, log messages are displayed only if the
 provided search pattern matches any of the author, date, log message
 text (unless --quiet is used), or, if the --verbose option is also
 provided, a changed path.
 The search pattern may include "glob syntax" wildcards:
     ?      matches any single character
     *      matches a sequence of arbitrary characters
     [abc]  matches any of the characters listed inside the brackets
 If multiple --search options are provided, a log message is shown if
 it matches any of the provided search patterns. If the --search-and
 option is used, that option's argument is combined with the pattern
 from the previous --search or --search-and option, and a log message
 is shown only if it matches the combined search pattern.
 If --limit is used in combination with --search, --limit restricts the
 number of log messages searched, rather than restricting the output
 to a particular number of matching log messages.

【讨论】:

以上是关于如何在 SVN 中查找文件被删除/移动的所有提交(修订号)的主要内容,如果未能解决你的问题,请参考以下文章

svn冲突在idea里怎么解决

svn如何实现文件移动? 我想把文件从一个文件夹中移动到另一个文件夹中。怎么实现

svn unity场景冲突怎么补救

svn删除文件怎么才能不被更新回来

svn服务器端 无法删除文件,只能删除文件夹,这是怎么回事儿啊?

提交代码,SVN被锁定,提示:svn is already locked解决方案