gpt4 book ai didi

powershell - 如何在powershell中使用SVN-commit

转载 作者:行者123 更新时间:2023-12-03 00:35:10 26 4
gpt4 key购买 nike

我想在我的 PowerShell 脚本中使用 SVN 命令。

我知道我需要将 SVN 可执行文件声明为变量,但之后我想提交一个我已声明为变量的文件,并且我想提供的提交消息在文件中指定。

$svnExe = "C:\Program Files\TortoiseSVN\bin\svn.exe"
$myFile = "C:\xx\file.txt"
$commitMsg = "C:\xx\msg.txt"

$myFile 已经是版本化文件,$commitMsg 不是也不会是版本化文件。

从命令行这有效:

svn commit -F C:\xx\msg.txt C:\xx\file.txt

但是我如何使用 PowerShell 来做到这一点?

最佳答案

Svn 在 PowerShell 中的工作方式与在命令提示符中的工作方式相同。如果您使用可执行文件的完整路径定义变量,则需要通过 call operator 运行它(&),但是,因为否则 PowerShell 将简单地回显字符串并对命令行的其余部分感到困惑。

$svn = 'C:\Program Files\TortoiseSVN\bin\svn.exe'
$myFile = 'C:\xx\file.txt'
$commitMsg = 'C:\xx\msg.txt'

& $svn commit -F $commitMsg $myFile

如果将 Svn 目录添加到路径环境变量中,则可以直接调用可执行文件:

$env:PATH += ';C:\Program Files\TortoiseSVN\bin'

...

svn.exe commit -F $commitMsg $myFile

另一种选择是为可执行文件定义一个别名:

New-Alias -Name svn -Value 'C:\Program Files\TortoiseSVN\bin\svn.exe'

...

svn commit -F $commitMsg $myFile

关于powershell - 如何在powershell中使用SVN-commit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43473520/

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