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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/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 repo中已更改的文件列表?_Svn_Shell - Fatal编程技术网

键入什么可以查看svn repo中已更改的文件列表?

键入什么可以查看svn repo中已更改的文件列表?,svn,shell,Svn,Shell,我有一个repo,我想在更新服务器上的源代码之前运行一个标准测试,它必须首先检查是否有任何文件已更改。我怎么能看到这样的清单 svn st st是状态的缩写。 如果只想检查修改过的文件 svn st | grep M 提供本地修改文件的列表: svn st | grep "^M" 仅查看上次更新本地版本时修改的项目 svn status -q 如果要查看远程存储库之间的差异,请使用-u svn status -qu 选项-q仅显示修改/添加/删除的项目典型的方法是使用svn st

我有一个repo,我想在更新服务器上的源代码之前运行一个标准测试,它必须首先检查是否有任何文件已更改。我怎么能看到这样的清单

svn st
st是状态的缩写。
如果只想检查修改过的文件

svn st | grep M

提供本地修改文件的列表:

   svn st | grep "^M"

仅查看上次更新本地版本时修改的项目

svn status -q
如果要查看远程存储库之间的差异,请使用
-u

svn status -qu

选项
-q
仅显示修改/添加/删除的项目

典型的方法是使用
svn status
和grep。如果至少找到一行,Grep将返回0。例如:

检查文件是否已修改:

value=`svn status | grep -q "^M"`
检查是否有任何变化:

value=`svn status | grep -q "^[A-Z]"`

改变了对什么的尊重?关于存储库还是关于您上次更新本地版本的时间?如果回购已签出,并且对签出副本进行了任何更改。。。那么我需要知道。所以你可以忘记选项
-u
grep M
不好,假设你有一个名为
M
的文件是的,但它对我有效。只有当您有数百个已更改的文件时,它才会起作用。在这种情况下,您需要使用一些regexp。选项
-q
是最简单的解决方案