当您直接下载源代码(并构建它 - 假设您已满足构建依赖关系)时,您指定(或者可以忽略它)默认回退编辑器。通常源建立在Ubuntu这样的事情完成后(假设我已经提取/下载的颠覆从here1.8.10源):
./configure
make
sudo make install
通知的./configure
命令上面并没有指定任何选项。默认值将安装到前缀/ usr/local。在发布这些命令(在Ubuntu 12.04上)之前,我运行了sudo apt-get build-dep subversion
。然后我做了上面的命令来构建和安装。我确保选项1-5(在OP问题中)不满意,然后尝试对存储库进行更改。我把它作为响应:
svn: E205007: Commit failed (details follow):
svn: E205007: 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: E205007: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found
由于我没有删除Ubuntu官方颠覆我不得不跑矿为/usr/local/bin/svn
,以确保我用的是一个我建。我本可以使用sudo apt-get remove subversion
删除官方的,以确保。现在
如果运行这些命令的源重建:
make clean
./configure --with-editor=/usr/bin/editor
make
sudo make install
每个人都应该发现,如果选择1至5不满意这个版本的颠覆运行它应该默认为运行任何/usr/bin/editor
点。在Ubuntu上,这取决于正在使用的替代方案。
所以当Ubuntu做一个官方的build时,他们的备用编辑器从哪里来?我在link去了12.04源代码库进行颠覆。在右侧,我下载了diff文件subversion_1.6.17dfsg-3ubuntu3.4.diff.gz。我打开了差异文件Ubuntu的使用和向下滚动,你可以找到他们使用这套./configure
选项(标志):
confflags:= \ 前缀=的/ usr \ --libdir = $( libdir)\ --mandir = \ $$ {prefix}/share/man \ --with-apr =/usr \ --with-apr-util =/usr \ --with-neon =/usr \ --with-农奴=/USR \ --with-伯克利分贝= :::分贝\ --with-SASL =/USR \ --with编辑器=在/ usr /斌/编辑 \ --with-ru通过-sitedir =/usr/lib中/红宝石\ --with-痛饮=/USR \ --with-的KWallet \ --with-侏儒-钥匙圈
黑体条目显示,他们使用/usr/bin/editor
作为他们的后备。
我已经在Ubuntu 12.04上从源代码构建了Subversion 1.8.10并获得了预期的行为。这暗示了以下其中一种可能性:
- 在其中一个系统上实际满足选项1到5。
- 颠覆的一个版本是用
--with-editor
配置标志(直接或间接)构建的。后备将指向--with-editor
配置标志设置为。
- 在其中一个系统上运行错误版本的Subversion。其中一种可能性是实际上正在使用Ubuntu官方颠覆。如果是这样的话,它的建立是为了使用
/usr/bin/editor
作为后备。
- 在您的系统中,您有一个用于指定编辑器的
svn
的别名(或等效项)。例如,将在启动脚本中指定别名,例如~/.bashrc
,~/.bash_profile
,/etc/bash.bashrc
。
使用'ltrace'您'svn'命令查找。也许'svn'二进制文件有内置的东西;尝试'字符串$(其中svn)' – 2014-10-22 17:40:11
你确认你使用的版本是你创建的版本吗?是否有可能你已经安装并运行错误?我会通过运行'svn --version'来验证 – 2014-10-29 00:04:39
在两台机器上调用'svn --version'表明它们都运行Subversion 1.8.10版本。 – 2014-10-29 00:23:02