2013-07-19 46 views
2

我正在使用安裝了git 1.8.3.msysgit.0的64位Windows 7。爲什麼'git'有效,但'git-svn'不能,我該如何解決?

git工作正常,在任何地方的命令:

PS C:\dev> git --version 
git version 1.8.3.msysgit.0 

但是,該命令git-svn不會:

PS C:\dev> git-svn 
The term 'git-svn' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. 
At line:1 char:8 
+ git-svn <<<< 
    + CategoryInfo   : ObjectNotFound: (git-svn:String) [], CommandNotFoundException 
    + FullyQualifiedErrorId : CommandNotFoundException 

上面給出的例子是使用PowerShell的,但運行的Git的bash給出了一個類似的錯誤:

$ git-svn 
sh.exe": git-svn: command not found 

Git is inst在C:\Program Files (x86)\Git alled

我的Windows路徑系統變量包含C:\Program Files (x86)\Git\cmd;

看來,git-svn生活在C:\Program Files (x86)\Git\libexec\git-core\git-svn有沒有文件擴展名,這是令人困惑我,因爲在該目錄中的其他文件進行.exe擴展,但這些都是一般較大文件,暗示可能git-svn應該是另一個命令的別名,但Windows不知道它可以被執行。我只是在那裏猜測。

無論如何,我該如何解決這個問題?

回答

7

執行它作爲git svn(有一個空格,而不是連字符)。

後來,git從PATH上的所有git-foo可執行文件切換到只有git在路徑上。我認爲核心git可執行文件知道採取其第一個參數並構造相關的git-foo命令,並在libexec目錄中查找該名稱的可執行文件。

+0

我引用的教程很舊,確實使用了連字符格式而不是較新的(工作)格式。謝謝! –

相關問題