TortoiseSVN致力于多个目标

时间:2015-10-20 18:23:44

标签: svn tortoisesvn commit

我使用TortoiseSVN作为我的版本控制工具。我最近创建了一个命令行来将更改的文件提交到SVN存储库。

我的存储库位于此处:file:///F:/SVNRepository/TortoiseSVN

我的源代码文件位于:C:\Users\userid\Documents\ActiveDocuments\PSScripts\

如果我转到Windows资源管理器并右键单击该文件,我会看到以下内容,这是正确的:

Windows Explorer Commit Command

但是,如果我运行TortoiseSVN命令,我会看到以下内容:

Multiple targets and duplicates my files

注意Commit To:如何说(选择了多个目标),并且您看到所有文件的副本。

我现在搜索了几个小时,似乎无法找到如何正确显示TortoiseSVN Commit Command。

以下是我编写命令的方式:

'C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe' '/command:commit' '/path:"C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts\*.*"'

以下是svn info命令的结果:

C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts\TortoiseSVN>svn info
Path: .
Working Copy Root Path: C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts
URL: file:///F:/SVNRepository/TortoiseSVN
Relative URL: ^/TortoiseSVN
Repository Root: file:///F:/SVNRepository
Repository UUID: fd12eeda-107f-5d40-bebd-932aaf916f88
Revision: 11
Node Kind: directory
Schedule: normal
Last Changed Author: zrmfld
Last Changed Rev: 11
Last Changed Date: 2015-10-20 13:31:07 -0400 (Tue, 20 Oct 2015)

1 个答案:

答案 0 :(得分:2)

  1. 我不知道为什么你在TortoiseProc命令的每个部分周围使用了撇号,根据docs(对于CMD-shell?)它是不需要的(请注意TortoiseProc的页面底部的第一个示例)提交)
  2. 对于:commit命令“... / path指定目标目录或要提交的文件列表...”,即“dir中的所有(已更改的版本化)文件”可能只是
  3. /path:"C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts\"

    1. C:\Program Files\TortoiseSVN\bin\通常添加到PATH,TortoiseProc可以从任何位置调用,因此:你可以在脚本中有smth。更像是
    2. cd C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts
      TortoiseProc.exe /command:commit /path:"." ...
      

      最后但并非最不重要

      SVN活动的简单和良好的自动化假设使用完全非交互式的 CLI工具,您可以将其作为TortoiseSVN安装的一部分:简单透明的语法,无对话|窗口,读取svn help commit