我有一个 Subversion 工作副本G:\csmdepot\构建其中有不同的文件,有些被忽略,有些则没有(我忽略了 Tortoise 的文件):
- \Build_1.wimignored
- \Build_2.wimignored
- \WimID.xml(没有被忽略)
现在,为了自动化我想通过命令行执行的所有操作,我尝试了以下操作(我正在 vbscript 中编写一个批处理文件并运行它):
fso.MoveFile "G:\csmdepot\Builds\WimID.xml", "G:\WimID.xml"
--- 批处理文件启动
G:
cd G:\csmdepot\Builds\
svn commit WimID.xml -m "Commit that WimID.xml is away"
svn propset svn:ignore WimID.xml .
批处理文件结束---
fso.MoveFile "G:\WimID.xml", "G:\csmdepot\Builds\WimID.xml"
...
但是,当我返回文件夹 G:\csmdepot\Builds 时,所有忽略的文件都被标记为未版本化,并且 svn:ignore 属性中的唯一值是 WimID.xml,但该文件也是版本化的。当我手动提交时,至少 WimID.xml 被忽略。
我能做些什么将 WimID.xml 附加到 svn:ignore 属性的值而不删除旧值
and
我的 svn commit 语句有什么问题?
编辑: fso.MoveFile 语句正在工作。它必须用我的 svn 命令做一些事情。
正如您所注意到的,使用svn propset svn:ignore
将覆盖您之前设置的 svn:ignore 属性。
不幸的是,没有与此相关的简单直接的附加命令。如上所述here https://stackoverflow.com/questions/10648586/append-directories-to-ignored-list-in-svn如果你想要一个有效的附加,你需要执行某种批处理/shell 脚本来修复它。
但是,如果您只是偶尔想这样做,您也可以使用其他解决方案来实现:
- 通过使用文件(我称之为ignoredFiles)中的所有所需模式来指定整个忽略集,然后使用
svn propset svn:ignore -F ignoredFiles .
- 您可以使用此命令在多行中添加文件,方法是在文件名之间按 Enter 键并在整个参数周围加上引号,但这可能仅适用于某些操作系统/shell。就像是:
svn propset svn:ignore ‘Build_1.wim [enter] Build_2.wim [enter] WimID.xml’ . [enter]
(取自在博客文章中发表评论 http://www.mattromaine.com/2007/06/10/svnignore-propset/)
- 使用 propedit 代替:
svn propedit svn:ignore .
然而,这需要使用命令行 svn 进行一些设置。看svn help propedit
更多细节。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)