我使用TortoiseSVN作为我的版本控制工具。我最近创建了一个命令行来将更改的文件提交到SVN存储库。
我的存储库位于此处:file:///F:/SVNRepository/TortoiseSVN
我的源代码文件位于:C:\Users\userid\Documents\ActiveDocuments\PSScripts\
如果我转到Windows资源管理器并右键单击该文件,我会看到以下内容,这是正确的:
但是,如果我运行TortoiseSVN命令,我会看到以下内容:
注意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)
答案 0 :(得分:2)
:commit
命令“... / path指定目标目录或要提交的文件列表...”,即“dir中的所有(已更改的版本化)文件”可能只是 /path:"C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts\"
C:\Program Files\TortoiseSVN\bin\
通常添加到PATH,TortoiseProc可以从任何位置调用,因此:你可以在脚本中有smth。更像是cd C:\Users\zrmfld\Documents\ActiveDocuments\PSScripts TortoiseProc.exe /command:commit /path:"." ...
最后但并非最不重要:
SVN活动的简单和良好的自动化假设使用完全非交互式的 CLI工具,您可以将其作为TortoiseSVN安装的一部分:简单透明的语法,无对话|窗口,读取svn help commit