【问题标题】:Git GUI push to specific branchGit GUI推送到特定分支
【发布时间】:2016-06-06 11:38:11
【问题描述】:

如何使用 GIT gui 推送到远程的特定分支。我似乎找不到它的选择。假设我想推送到特定的分支名称“branchOne”。怎么可能做到?我正在推动 gitlab。

【问题讨论】:

  • 你不能从一个分支推送到一个不相关的分支。这不是推动,而是合并。推送意味着您对本地分支所做的更改将发送到其相关的远程分支 - 应该具有相同的名称以避免混淆。签出branchOne,合并master 的更改,然后将本地branchOne 推送到远程
  • @PanagiotisKanavos 你的意思是我选择分支 -> 创建 -> 跟踪分支以签出 branchOne?

标签: git git-gui


【解决方案1】:

每当您将某些内容推送到远程服务器时,您就是在推送特定的分支。在您的情况下,您有一个 master 分支,因此您的 master 分支中的更改将被添加到远程。

如果您有两个分支 ma​​sterdevelopment,那么在推送时,您必须在 GIT GUI 中指定要推送的分支,因此在该分支中提交代码只会添加到远程仓库。

所以从技术上讲,您所要求的不是必需的。

【讨论】:

  • 那么我如何克隆一个特定的分支?
  • 您不必克隆特定的分支。如果您克隆了远程存储库,那么您已经克隆了分支。您只需要切换到分支的本地“副本”
  • 当你克隆一个存储库时,你克隆所有的分支并用它提交你不能克隆一个特定的分支。
【解决方案2】:

在 git 中,您需要将分支的名称指定为 pullpush
在旧版本中,它不是强制性的,但它有一些副作用。

如果您希望推送到 master,您应该在您的情况下指定分支名称,该工具可以让您选择所需的分支。


SourceTree

目前最好的 GUI 工具是 SourceTree,它比您使用的 git 工具好得多。


Git v2.0 发行说明

向后兼容性说明

git push [$there] 没有说要推送什么时,我们使用了 迄今为止的传统matching语义(您的所有分支都已发送 到远程只要已经有同名的分支 在那边)。在 Git 2.0 中,现在默认是 simple 语义, 哪个推动:

  • 只有当前分支到同名分支,并且只有 当前分支设置为与该远程集成时 分支,如果您推送到与您获取相同的远程;或

  • 只有当前分支到同名分支,如果你 正在推送到您通常不从那里获取的远程。

你可以使用配置变量push.default来改变 这。如果您是一位想要继续使用 matching语义,可以将变量设置为“匹配”,对于 例子。阅读文档以了解其他可能性。

【讨论】:

    猜你喜欢
    • 2013-10-09
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 2021-05-31
    • 2020-04-09
    • 2011-09-10
    • 2016-07-08
    • 1970-01-01
    相关资源
    最近更新 更多