gpt4 book ai didi

svn - Subversion 中的忽略文件从 svn :ignore property 中删除旧值

转载 作者:行者123 更新时间:2023-12-04 19:37:27 26 4
gpt4 key购买 nike

我有一个 Subversion 工作副本 G:\csmdepot\Builds,里面有不同的文件,有些被忽略了有些没有(我用 Tortoise 忽略了文件):

  • \Build_1.wim 忽略
  • \Build_2.wim 忽略
  • \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 属性的值而不删除旧的我的 svn commit 语句有什么问题?

编辑:fso.MoveFile 语句有效。它必须用我的 svn 命令做一些事情。

最佳答案

正如您所注意到的,使用 svn propset svn:ignore 将覆盖您之前设置的 svn:ignore 属性。

不幸的是,没有关于此的简单直接的追加命令。如所述here如果你想要一个有效的追加,你需要做一些批处理/shell 脚本来修复它。

但是,如果您只是偶尔想这样做,您也可以使用其他解决方案:

  1. 通过在一个文件(我称之为 ignoredFiles)中使用所有需要的模式来指定整个忽略集,然后使用 svn propset svn:ignore -F ignoredFiles 。
  2. 您可以使用此命令在多行中添加文件,方法是在文件名之间按回车键并将整个参数用引号括起来,但这可能只适用于某些操作系统/shell。类似于:svn propset svn:ignore ‘Build_1.wim [enter] Build_2.wim [enter] WimID.xml’。 [enter](取自comment in a blog post)
  3. 改为使用 propedit:svn propedit svn:ignore 。 但是这需要使用命令行 svn 进行一些设置。有关详细信息,请参阅 svn help propedit

关于svn - Subversion 中的忽略文件从 svn :ignore property 中删除旧值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19856458/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com