當您直接下載源代碼(並構建它 - 假設您已滿足構建依賴關係)時,您指定(或者可以忽略它)默認回退編輯器。通常源建立在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