2013-10-04 43 views
0

我想設置我的git repo在我的分支上設置上游,但它不工作。Git設置上游不起作用

我的.git/config中的樣子:

[core] 
    repositoryformatversion = 0 
    filemode = false 
    logallrefupdates = true 
[remote "origin"] 
    url = ssh://[email protected]:22/git-repos/webmessage/server/java/webmessage-server.git 
    fetch = +refs/heads/*:refs/remotes/origin/* 
    fetch = refs/notes/*:refs/notes/* 
    push = HEAD:refs/for/master 
    pushurl = ssh://[email protected]:22/git-repos/webmessage/server/java/webmessage-server.git 
[branch "master"] 
    remote = origin 
    merge = refs/heads/master 
[branch "develop"] 
    remote = origin 
    merge = refs/heads/develop 
[gerrit] 
    createchangeid = true 
[push] 
    default = upstream 

當我運行git remote show origin我得到:

* remote origin 
    Fetch URL: ssh://[email protected]:22/git-repos/webmessage/server/java/webmessage-server.git 
    Push URL: ssh://[email protected]:22/git-repos/webmessage/server/java/webmessage-server.git 
    HEAD branch: master 
    Remote branches: 
    develop tracked 
    master tracked 
    Local branches configured for 'git pull': 
    develop merges with remote develop 
    master merges with remote master 
    Local ref configured for 'git push': 
    HEAD pushes to refs/for/master (up to date) 

如果我運行git push origin developgit branch -u origin/develop,秀出身的輸出也不會改變。我的配置有問題嗎?

回答

0

事實證明,我的遠程存儲庫中有文件(不知道他們是如何到達那裏的),他們正在創建問題。刪除它們之後,事情似乎現在就起作用了。

0

git remote show的輸出具有誤導性,但您已經配置了上游分支,您可以在「爲git pull配置的本地分支」中看到它們。

我個人使用git branch -vv來查看每個分支的上游跟蹤分支。

+0

我明白了。但是git push仍然不起作用。它聲稱一切都是最新的,但git狀態顯示我的代碼提前一個提交。 – dawsonc623

+0

@shadowayex也許你在'master'或'develop'之外的分支上,那麼(或者甚至沒有分支)? – twalberg