2011-07-12 30 views

回答

23

在配置文件的[branch "master"](或[branch "main_int"])部分有多個remote = ...設置。看到這一點,運行:

git config --get-all branch.master.remote 

機會是兩條線都在.git/config文件。刪除其中一行。

如果你只看到你的.git/config文件中的一個remote = ...線,請檢查您~/.gitconfig~/.config/git/config/etc/gitconfig文件。 (有效配置對儲存是所有這些文件的串聯在一起。)

即配置設置存儲分支的上游儲存庫,當鍵入git pushgit fetch其中使用的名稱。一個分支只能有一個上游分支(例如,master可以跟在origin/master之後,但它不能與也是跟在some_other_remote/master之後)。

+0

謝謝你!我很放心! – user561638

+4

請注意,如果您已經在全局中使用['git config --global branch.master.remote origin']設置了* 1 *'remote = ...'設置, //stackoverflow.com/questions/658885/how-do-you-get-git-to-always-pull-from-a-specific-branch)。 – Bengt

+0

@Bengt:好的,謝謝。我更新了我的答案,提到其他配置文件。 –

1

這意味着您的repo配置了多個分支的遙控器。

我喜歡做下面的命令來糾正這種情況:

首先確保有原點位置得心應手。您可以使用git remote show origin或僅使用git remote -v來查看當前爲原始位置設置的內容。

用遠程rm命令刪除不必要的遠程。例如,要刪除的起源遠程使用:

git remote rm origin 

此命令將刪除所有名稱爲「原產地」的遙控器,所以如果你有一個以上的,爲你的警告消息似乎表明,那麼你將有此命令後沒有。但在這一點上,你可以添加一個:

git remote add origin location:/to/origin/repo.git 
相關問題