这可能是不可能的,但无论如何我都会问.
没有详细说明为什么会这样,我有两个主要的结账工作,一个用于生产发布分支,一个用于主干.它们中的每一个都是对子项目的svn:externals引用的一小部分,在签出的svn目录下没有直接内容.
也就是说,四个svn:externals指令添加了每个checkout目录中的所有内容.
当我通过Eclipse(/ Subclipse)进行提交时,我可以一次性提交所有外部项目的更改,这很好,因为它们只是在同一个存储库中的单独子项目,这使我可以避免单独执行4个项目连续提交到同一个回购.
是不是可以从命令行执行相同的操作?每个外部的提交肯定可以编写脚本并别名为一个命令,但是如果可能的话,我宁愿避免使用相应更改的单独提交来混淆提交日志.
Ste*_*fan 11
您可以在命令行客户端中指定要提交的所有文件和文件夹,包括外部.由于CL不会递归到外部,因此您必须单独在commit命令中指定它们:
svn ci working_copy externals1 externals2 -m "log message"
Run Code Online (Sandbox Code Playgroud)
虽然没试过这个.如果它不起作用,则必须单独指定所有已修改的文件和文件夹,而不仅仅指定外部的"根"文件夹.
不幸的是,你的假设是正确的.当前的subversion命令行工具将不会在提交期间递归到脱节的外部工作副本.Eclipse可能会发现它全部都是相同的并且调整了所有内容,因此它只执行一次提交事务.
客户端的这个缺点实际上被列为在项目中定义外部时需要注意的问题之一.从1.6.1客户端开始,此限制仍然存在.