git推到特定的分支
即使阅读了这个问题: git-push-current-branch ,我仍然很难搞清楚我应该怎么写我的git push命令。 正如问题链接中提到的,从文档中不清楚。
我想用我的“现实世界”的例子。 以下是我在分支的顶层执行git status
命令时看到的内容:
在分支amd_qlp_tester上
你的分支在5次提交之前在“origin / amd_qlp_tester”之前。
等等…
所以我的分支名称是amd_qlp_tester
但它从主分支“分支”(如果我有条款错误,这是因为我的SVN背景)。 但是接下来还有名字“origin / amd_qlp_testser”
那么我怎么说我的push命令呢?
是否有这些:
git push origin/amd_qlp_tester? git push origin amd_qlp_tester? git push amd_qlp_tester? git push origin? git push?
git push origin amd_qlp_tester
会为你工作。 如果你只是inputgit push
,那么当前分支的远程是默认值。
push的语法如下所示 – git push <remote> <branch>
。 如果您在.git/config
文件中查看您的远程位置,则会看到一个指定存储库的URL的条目[remote "origin"]
。 所以,在命令的第一部分,你将告诉Git在哪里find这个项目的仓库,然后你只需指定一个分支。
您所链接的问题的答案都是关于configurationgit,以便您可以input非常短的git push
命令并让它们执行任何您想要的操作。 如果你知道你想要什么以及如何在Git-Ese中拼写,那你真是太棒了! 🙂
就你而言, Petr Mensik的答案是(好的,“是”)正确的答案 。 原因如下:
命令git push remote
在您的.git/config
文件中git push remote
根,以find指定的“远程”(例如, origin
)。 configuration文件列表:
- 远程“生活”(例如,
ssh:// hostname / path
)在哪里(URL-明智的) - 如果不同的话,那就是推
- 如果你没有说推动什么分支,什么推动
- 当你运行
git fetch remote
时候会得到什么
当你第一次克隆回购时,只要是git为其中一些设置默认值。 URL是你从克隆的任何东西,其余的,如果设置或取消设置,都是“合理”的默认值…或者,嗯, 是吗?
问题在于人们随着时间的推移改变了什么是“合理的”。 所以现在(取决于你的git版本以及你是否configuration了详细的东西),git可能会打印很多关于将来更改默认值的警告。 添加“分支推”的名称 – amd_qlp_tester
– (1)closures,(2)只推动一个分支。
如果你想推更方便,你可以这样做:
git push origin
甚至:
git push
但是否这样做是你想要的,取决于你是否同意“早期的git作者”原始默认是合理的,或者“后来的git作者”认为原始默认是不合理的。 所以,当你想做所有的configuration(最终)的时候,看看你链接到的问题(和答案)。
至于名字origin/amd_qlp_tester
首先:这实际上是一个本地实体(名称保存在您的回购),即使它被称为“远程分支”。 这是git最好的猜测:“ amd_qlp_tester
在哪里”。 Git 在可以的时候更新它 。