几周前,我以--non-recursive
模式检查了我们的整个SVN回购。现在看来,当我执行svn up
时,它不会递归地更新文件夹。
这是一个问题,因为我想从同事那里获得更改,而不必遍历每个目录并手动执行svn up
。。。
如何强制更新为递归?
以下内容应该有效(适用于svn 1.7.x或更高版本):
svn up --set-depth infinity
在下一个svn更新命令上提供参数--depth:
svn up --depth infinity
在签出非递归签出时,subversion会记住此设置,直到您告诉它其他设置为止。
注意:您不应该再使用参数-N,因为它已被弃用。尝试使用--深度文件或--depth immediates
您还可以使用下面的命令在所有主干文件夹中执行update。
find <YOUR_ROOT_DIR> -type d -name trunk -exec svn up {} +
如果在根结构中进行了多次"svn checkouts",这将特别有用,如下所示。
- 根
- 项目A
- 干线
- 项目B
- 干线
- 项目C
- 干线
- 项目A
在这种情况下,有人签出了3次,每个项目一次