2016-06-15 50 views
0

我在關注this MOOC以瞭解Git。在this video之後,我想在我的存儲庫中進行第一次提交。所以我跑了git commit命令,期待Sublime Text Editor會在我輸入我的提交信息時啓動。 但我得到了以下錯誤。問題是,我該如何解決這個問題。Git Commit - 爲什麼GitBash無法啓動我的默認文本編輯器(sublime)讓我輸入提交消息

Jojoa (master +) Directory for practice $ git commit 
'C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe' -n -w: C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe: No such file or directory 
error: There was a problem with the editor ''C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe' -n -w'. 
Please supply the message using either -m or -F option. 

我如何已經建立了崇高的文本作爲默認編輯:

使用this lesson爲指導,我跑到下面的命令來設置崇高文本作爲我的默認文本編輯。

git config --global core.editor "'C:/Program\ Files/Sublime\ Text \2/sublime_text.exe' -n -w" 

然後我運行了C:/Program\ Files/Sublime\ Text \2/sublime_text.exe,這次啓動了Sublime Text編輯器。這驗證了上述命令正常工作。

然後我徑自可以編輯.bash_profile配置文件中的崇高文本編輯器將下面的行添加到它:

alias sublime = "C:/Program\ Files/Sublime\ Text \2/sublime_text.exe" 

然後我關閉和打開的Git Bash和跑sublime。這打開了Sublime Text Editor。所以我確定工作區已經正確設置。

+1

我想你應該要麼刪除單引號或轉義字符:'程序\ Files'或''計劃Files'' – andlrc

+0

@andlrc但它打開與簡單的命令崇高編輯'崇高',這意味着編輯器配置正確。不是嗎? – Solace

回答

1

以下應爲你工作:

git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe' -n -w" 

您的別名工作的原因是因爲它得到的shell擴展:

alias sublime="C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe" 
sublime -> C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe -> 
'C:/Program Files/Sublime Text 2/sublime_text.exe' 

僅供參考,別名只在炮彈內存不能被shell調用的任何進程使用,您可以創建一個名爲:subl的腳本,並將其放置在您的某處:$PATH

$ echo "$PATH" 
/usr/local/bin:/usr/bin:/bin:/home/USER/bin 
$ cat "$HOME/bin/subl" 
#!/bin/sh 
'C:/Program Files/Sublime Text 2/sublime_text.exe' "[email protected]" 

以上將使您能夠使用命令subl無處不在,甚至git的core.editor:

git config --global core.editor 'subl -n -w' 

替代你可以設置哪些git會如果沒有核心使用$VISUAL$EDITOR環境變量。編輯設置:

export EDITOR="C:/Program Files/Sublime Text 2/sublime_text.exe" 
0

默認情況下,Git使用您設置的任何默認文本編輯器($VISUAL$EDITOR),或者返回到vi編輯器來創建和編輯提交和標記消息。要更改默認的別的東西,你可以使用core.editor設置:

$ git config --global core.editor emacs 

現在,不管什麼設置爲默認的shell編輯器,Git會火起來的Emacs編輯的郵件。

相關問題