如果我输入git remote -v,我会得到一些git repos:
origin git@github.com:me/MyProject.git (fetch)
origin git@github.com:me/MyProject.git (push)
testheroku git@heroku.com:test.git (fetch)
testheroku git@heroku.com:test.git (push)
upstream git://github.com:me/MyProject.git (fetch)
upstream git://github.com:me/MyProject.git (push)
我刚刚在README文件上运行了“git commit”,并希望这可以更新MyProject.git上的文件 - 这似乎不是这种情况。我错了吗?
另外,有人可以澄清上游是什么吗?这是否意味着我领先于分支机构或究竟是什么?
谢谢, Gearoid。
答案 0 :(得分:4)
提交是本地的。你需要推动它们。
git push origin mybranch # this is probably master in your case
如果您始终执行此操作,则可以设置默认值,以确定将推送更改的遥控器。那么你可以
git push
根据您的配置,您对任何分支机构的更改都会转到任何遥控器。你第一次推,你可以
git push -u origin mybranch
这将设置该分支自动包含以推送到该存储库。随后的
git push
将等同于
git push origin mybranch
为了更加熟悉,请查看
git remote show
git remote show origin
git config -l
此外,您可能不需要最后一个遥控器。你可以用
摆脱它git remote rm upstream
希望这有帮助
答案 1 :(得分:1)
提交时,您将提交到本地存储库。每个git工作目录都有一个相关的仓库。
origin,testheroku和upstream都是你可以轻松推送的遥控器(你也可以明确地使用未列出的仓库)。
如果你这样做:
git push
它可能(取决于配置)自动推送到origin
的{{1}}分支。
此外,第一个和第三个似乎是相同的回购,只是使用不同的URL。
您也可以根据需要在本地创建分支,但这是一个不同的主题。
答案 2 :(得分:0)
git remote -v show
git branch -vv
git config branch.$branch.remote
git remote -v show
显示有关您的遥控器的有趣信息
git branch -vv
命令将向您显示特定分支的上游,默认情况下,可能是 。
然而git config branch.master.remote
是确定git push