git:推送一个提交
假设我做了几个提交,并希望挑选哪些我推送到远程存储库。 我怎么能这样做(在ASCII:C1-> C2-> C3-> C4,我想推C2和C4)。 将重新排序,重新设置,推动,然后重新设置工作? (C1-> C2-> C3-> C4 => C2-> C4-> C1-> C3 =>复位C4 =>推动=>复位C3)。 有更好的方法吗?
如果你有私人分支的提交,你可以从私人分支挑选提交并将它们应用到官方分支。 此时,您现在可以推送官方分支上的所有提交(这是您之前挑选樱桃的子集)。
你在找什么:
git push origin commit-id:master
信用转到:http://blog.dennisrobinson.name/push-only-one-commit-with-git/
解释性说明:
git rebase -i
)进行重新排序,以便它们按照你想要推送它们的顺序进行。 commit-id
不一定是sha1。 要在最后N次提交之前推送所有内容,请使用“HEAD〜N”代替commit-id
。 如果推送到远程存储库中不存在的分支,则使用refs/heads/
作为远程分支的前缀,例如:
git push origin HEAD~1:refs/heads/completely-new-branch
(如果没有,git会用这个无望的错误信息来惩罚你)。
$ git push <remote name> <commit hash>:<remote branch name>
# Example:
$ git push origin 2dc2b7e393e6b712ef103eaac81050b9693395a4:master
链接地址: http://www.djcxy.com/p/8769.html