报错信息 {#报错信息}
SVN在使用命令svn commit
提交时报错信息如下所示:
|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3
| svn: Commit failed (details follow): svn: Could not use external editor to fetch log message; consider setting the $SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR is set, and no 'editor-cmd' run-time configuration option was found
|
原因分析:SVN操作时强制要设置日志信息,没有提供就会报以上错误信息。
最简单的解决办法:不想填写日志信息,命令上加上 -m ''
即可,也就是在 -m
之后加上空字符串。
Linux下解决办法 {#Linux下解决办法}
设置环境变量SVN_EDITOR
为vim
|-----------|-------------------------------|
| 1
| export SVN_EDITOR=vim
|
Windows下解决办法 {#Windows下解决办法}
这个提示要求我们指定一个记录日志的文件或者在系统环境变量中增加一个SVN_EDITOR
的变量。两者选其一就可以了。
方法一:在系统环境变量中增加一个SVN_EDITOR
的变量。 {#方法一:在系统环境变量中增加一个SVN-EDITOR的变量。}
- 系统变量 -> 新建 -> 变量名:SVN_EDITOR;变量值:
C:\Windows\System32\notepad.exe
- svn仓库目录 -> conf目录 -> 打开
svnserve.conf
-> 找到两行:#anon-access=read
和#anon-access=write
-> 删除#
完成设置后。重新打开一个新的命令行窗口,这样修改才会生效。
Ps:如果第二步没有做,会提示"认证失败"。这个方法的不方便之处是每次执行svn后,都会弹出一个窗口。
方法二:指定一个记录日志的文件。 {#方法二:指定一个记录日志的文件。}
- 在C盘下建立一个日志文件:log.txt,内容为空。
- 执行命令
svn commit abc.txt --F c:\log.txt
其他思路 {#其他思路}
如果还是不行,就按照错误提示加上提交的日志信息:
|-----------|---------------------------------------------------|
| 1
| svn commit -m "comit messages content..."
|
或者
|-----------|--------------------------|
| 1
| svn commit -m ""
|