将新版本提交到svn存储库时提交失败错误

时间:2010-10-11 01:42:52

标签: svn repository commit

我正在尝试将新版本提交到我的SVN存储库,但遇到了这个错误:

  

svn:提交失败(详情如下):
  svn:无法使用外部编辑器获取日志消息;考虑设置$ SVN_EDITOR环境变量或使用--message(-m)或--file(-F)选项
  svn:没有设置环境变量SVN_EDITOR,VISUAL或EDITOR,也没有找到'editor-cmd'运行时配置选项   new-computers-computer:trunk newcomputer $

怎么了?

5 个答案:

答案 0 :(得分:31)

贾斯汀,

每次使用Subversion时,都需要编写提交内容的摘要(即提交消息)。该错误是因为Subversion正在尝试启动文本编辑器,以便您可以编写提交消息,但编辑器永远不会被启动。在.bash_profile中设置SVN_EDITOR就可以了。以下是有关如何将vim设置为svn使用的默认编辑器的详细分步说明:Original link dead, replaced with archive.is mirror

或者,如错误消息中所示,您可以使用-f从现有文件加载提交邮件,或者使用-m传递邮件。

示例:

svn commit -m "Fixed a regression that prevented pigs from flying (resolves issue #123, but causes strange behavior elsewhere)"
svn commit -f /path/to/a/file/with/a/long/commit/message.txt

答案 1 :(得分:16)

如果要设置每次运行时将使用的默认编辑器

svn commit

在shell中尝试以下命令:

export SVN_EDITOR=nano

这会将nano设置为提交消息的文本编辑器。从现在开始,当您在没有svn commit标记的情况下拨打-m时,nano将会打开。关闭nano后,SVN将继续提交。

答案 2 :(得分:2)

我也有同样的问题,但它是在Windows上。我能够通过使用-m(--message)并提供提交消息来解决问题。

我也尝试过使用带有提交消息的cygwin,并且有效。

答案 3 :(得分:0)

我在尝试将未版本化的代码导入新的存储库时遇到了类似的问题,基于此问题上发布的答案,我能够解决我的问题(谢谢你们)。

我正在使用apache / http:

分享我用于将本地项目导入SVN的命令

TestCodeDir是项目的地方,尚未进行版本控制。

svn import /var/svn/TestCodeDir http://localhost/svn/TestCodeDir -m "Initial Commit"

注意:您必须配置好apache服务器并且必须运行它。

我希望这可以帮助别人。

答案 4 :(得分:0)

我在执行操作时遇到了同样的问题

svn copy $svn_source_path $svn_destination_path

我没有添加-m“ log msg”,即

svn copy $svn_source_path $svn_destination_path -m -m "Test tag creation"