【问题标题】:Is there any way to push only selected versions to a remote repository?有没有办法只将选定的版本推送到远程存储库?
【发布时间】:2014-01-27 19:08:32
【问题描述】:

如果堆栈溢出中此问题重复,请指出。

我想知道是否有任何方法可以将选定的版本(或最新的提交版本)推送到远程存储库? 当我推送时,它会推送所有未推送的版本——我错过了什么吗?

【问题讨论】:

    标签: git git-gui


    【解决方案1】:

    Git 提交依赖于其所有父提交,因此推送最后一个提交而不是倒数第二个提交是不可能的。

    不过,反过来也可以,即您不必推动树枝的尖端。例如,如果您想在 master 分支上推送倒数第二个提交(让最后一个未推送),您可以使用 master~:master 作为您的推送参考规范。 gitrevisions(7) 手册页描述了表达提交的不同方式。

    正如另一个答案中指出的那样,您也不必推送所有分支。如果你不指定要推送哪个分支,当前版本的 Git 会推送所有名称匹配的分支,但我相信这在 Git 2.0 中会有所改变。

    【讨论】:

    • 所以如果我推送最新版本,我别无选择,只能推送所有版本代码.. 谢谢.. 正是在寻找这个。
    【解决方案2】:

    使用:

    git push origin HEAD
    

    只会推送你当前的分支。

    git push origin foo:bar
    

    会将名为“foo”的本地分支推送到“origin”远程,并将源服务器上的分支命名为“bar”。

    有很多关于 Git 的文档:

    http://gitref.org/remotes/#push https://www.kernel.org/pub/software/scm/git/docs/git-push.html

    【讨论】:

      猜你喜欢
      • 2019-10-07
      • 2017-03-30
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 2013-09-11
      • 1970-01-01
      • 2018-06-24
      • 2010-10-25
      相关资源
      最近更新 更多