4

我尝试编写一个 bash 脚本,它应该提交给一个 svn repo。一切正常,直到我尝试提交。提交命令打开编辑器,脚本以提交消息留在的错误结束svn-commit.tmp

我尝试了几件事,但没有一个会奏效

commit_msg="$1"
svn commit -m "$commit_msg"

commit_msg="$1"
svn commit -m '$commit_msg'

commit_msg=$1
svn commit -m '$commit_msg'

以及所有与-q--non-interactive运算符。甚至svn commit -m "woohoo"打开编辑器,脚本以错误结束。

任何想法为什么在不打开编辑器的情况下无法在 bash 脚本中提交?

4

2 回答 2

3

You should use the --non-interactive option on the svn command:

svn commit --non-interactive -m '$commit_msg'
于 2013-02-02T20:07:16.663 回答
1

在我尝试svn ci而不是之后svn commit,一切都很好。我的第一个想法是 svn 的错误版本。询问大转储(又名谷歌)我找到了解决方案:: 在我的 .bash_profile 中有一个代码片段,它强制总是在按预期工作svn commit时打开编辑器。svn ci

我不知道代码片段的确切来源,但 Windows 用户必须与许多神秘行为作斗争。

感谢你的帮助。

于 2013-02-03T00:35:58.943 回答