2017-05-08 36 views
0

我有一個本地git倉庫與許多提交。我在github中創建了一個空回購(沒有用任何文件初始化)。未知版本或路徑不在工作樹錯誤首先推空清空

$ git remote add origin https://github.com/bar/foo.git 
$ git push -u origin master 
Counting objects: 35, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (6/6), done. 
Writing objects: 100% (35/35), 1.95 KiB | 0 bytes/s, done. 
Total 35 (delta 2), reused 0 (delta 0) 
remote: Resolving deltas: 100% (2/2), done. 
remote: bar/foo 
remote: fatal: ambiguous argument 'master': unknown revision or path not in the working tree. 
remote: Use '--' to separate paths from revisions, like this: 
remote: 'git <command> [<revision>...] -- [<file>...]' 
remote: master 
To https://github.com/bar/foo.git 
* [new branch]  master -> master 

我的更改是在遠程和東西似乎工作正常。不過,爲什麼我會得到一個「致命」的錯誤?

remote:fatal:含糊不清的參數'master':未知修訂或路徑不在工作樹中。

+0

你做了第一次提交嗎? –

+0

是的,我的本地回購有很多提交。遠程回購是新創建的,因此在推送時沒有提交。 – devnull

+0

所以它實際上是兩個repo.you可能需要首先拉遠程回購。 –

回答

0

部分push -u命令失敗,但它不應該是一個問題,它是一個單獨的任務。您現在可以嘗試運行:

git branch --set-upstream master origin/master 

手動設置它。 務必將分支名稱調整爲您真正使用的分支名稱。這裏的第一個參數是將要配置的本地分支的名稱,第二個參數是push默認指向的目標。

因此,在上面的示例中,我們將本地master設置爲默認推送到origin/master。這是push -u origin master會做的。如果你的本地回購是好的,如果它有'主'分支,那麼這個命令應該簡單地成功,沒有錯誤(順便說一句,push-u應該也有)。

如果這個命令失敗了,你應該查看你在本地回購中配置了什麼分支和跟蹤引用以及上游等等 - 有些東西是不對的!

也許你在本地沒有'master'分支?

+0

這是[更多信息](http://stackoverflow.com/questions/6089294/why-do-i-need-to-do-set-upstream-all-the-time) – quetzalcoatl

相關問題