当前位置:  开发笔记 > 开发工具 > 正文

如何从SVN获取所有未版本控制文件的列表?

如何解决《如何从SVN获取所有未版本控制文件的列表?》经验,为你挑选了4个好方法。

有时您正在开发并且您决定提交,忘记您在项目中创建了一些文件.然后几天后你的伙伴从Subversion获取你的构建并抱怨一些文件似乎丢失了.你意识到,啊垃圾,我忘了添加那些文件!

如何从Subversion获取不受版本控制的文件列表,所以我确定我已将所有内容添加到存储库中?



1> Greg Hewgill..:

使用svn status命令:

svn status | grep ^?

未版本化的文件用?表示?在线的开头.

如果您发现始终有一些不应添加到存储库的特定文件(例如,生成的二进制文件),则应svn:ignore在包含目录上设置该属性,以便在使用时这些文件不会一直显示svn status.


如果您要添加许多未版本控制的文件,请执行以下操作:`svn st | grep ^?| awk'{print $ 2} | xargs svn add`这将首先找到未版本控制的文件,awk将仅打印行中的第二项(即文件路径),xargs将使此路径成为svn add的参数.
awk命令末尾缺少单引号.命令应该是:`svn st | grep ^?| awk'{print $ 2}'| xargs svn add`
就个人而言,我总是在"svn ci"之前"svn diff",但由于有时候这很慢,我总是在"svn diff"之前"svn stat",这很方便因为我不忘记添加东西:)

2> bleater..:

如果某些文件已ignore添加到其状态,则它们将不会显示svn status.你需要:

svn status --no-ignore



3> Damian Powel..:

如果你在Windows上运行,你可以使用PowerShell 做类似于Greg Hewgill的回答.

(svn stat) -match '^\?'

这可以很容易地扩展,以找到所有未版本化和被忽略的文件并删除它们.

(svn stat "--no-ignore") -match '^[I?]' -replace '^.\s+','' | rm

希望对某人有帮助!



4> crig..:

或者从Windows命令行:

svn stat | find "?"

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有