2012-10-08 56 views
1

我對git並不陌生,但我對github更新,仍然是bash的初學者。我試圖設置一些配置的東西,並最終在我的本地機器上破壞git。以下是我按照these instructions on github for password caching所做的。如何解決所有命令都轉爲空行的git config問題?

$ git config --global user.name 'myusername' 
$ git config --global user.email '[email protected]' 
$ git credential-osxkeychain 
git: 'credential-osxkeychain' is not a git command. See 'git --help'. 
$ curl -s -O http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain 
$ chmod u+x git-credential-osxkeychain 
$ which git 
/usr/bin/git 
$ sudo mv git-credential-osxkeychain /usr/bin/git 
$ git config --global credential.helper osxkeychain 
^?^C 

我沒有收到任何答覆,只是一個新的線,我最終CTRL + c'ed出這個命令的git後。現在,無論何時我在任何回購中執行git命令,而不僅僅是這一次,光標就會移動到新行。我無法推/拉/克隆或使用我通常使用的命令。

我試過重新安裝最新版本的git,但仍然有問題。我該怎麼辦?

更新:

我試過解封credential.helper和卸載和重新安裝的git。仍然看到相同的行爲。我注意到,如果我只運行$ git,迴應是Usage: git credential-osxkeychain <get|store|erase>。此時,我只想刪除憑證-osxkeychain。仍然不成功。

按照要求,其輸出-a Git是:

$ which -a git 
/usr/bin/git 
/usr/local/git/bin/git 
+0

無論誰投票贊成這個被拒絕的話題:VCS問題都是關於SO的話題。 – ThiefMaster

回答

2

當你運行此命令:

$ sudo mv git-credential-osxkeychain /usr/bin/git 

您改寫現有git可執行文件,可執行git-credential-osxkeychain。該腳本只能作爲Git的子命令運行,而不是獨立運行。

如果您使用Time Machine,則可以嘗試從備份中恢復舊的/usr/bin/git。否則,你需要重新安裝Git。


基於下面的評論,似乎/usr/bin/git實際上仍然git-credential-osxkeychain,可能是因爲安裝的Git本身爲/usr/local,而不是/usr/bin

如果你不關心鑰匙扣行爲了,你可以刪除當前git可執行乾脆:

$ sudo rm /usr/bin/git 

這可能會導致的Git開始爲你立即工作,如果/usr/local/git/bin在你的路徑。或者你可以簡單地將其移動到/usr/local/git/bin/git-credential-osxkeychain

$ sudo mv /usr/bin/git /usr/local/git/bin/git-credential-osxkeychain 

這(再次,假設你的路徑是正確的),應允許您使用它作爲一個憑據助手就像你本來想。

+0

有趣...你一定是對的。到目前爲止,重新安裝git並沒有幫助我。它看起來像我的機器以某種方式掛在憑證-osxkeychain上。 –

+0

'which -a git'的輸出是什麼? – Brandan

+0

'/ usr/bin/git/usr/local/git/bin/git' –

相關問題