Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 我是否创建了其他分支?_Git_Github_Bitbucket - Fatal编程技术网

Git 我是否创建了其他分支?

Git 我是否创建了其他分支?,git,github,bitbucket,Git,Github,Bitbucket,我正在克隆这个特别的回购协议,在这个协议中,最初我的一位同事已经提出了拉取请求,但我没有意识到 基本上,我就是这么做的: git克隆 吉特分行-a git签出-b remotes/origin/feature/Issue01 遥控器/原点/功能/问题01 修改回购协议等 git添加、git提交、git推送 打开拉取请求 只是在我的公关页面上(我使用的是Atlassian),然后我意识到我的同事实际上打开了另一个公关页面,该页面仍然打开,但他的分支命名与我的不同 PR页面的顶部显示了分支机构的

我正在克隆这个特别的回购协议,在这个协议中,最初我的一位同事已经提出了拉取请求,但我没有意识到

基本上,我就是这么做的:

  • git克隆
  • 吉特分行-a
  • git签出-b remotes/origin/feature/Issue01 遥控器/原点/功能/问题01
  • 修改回购协议等
  • git添加、git提交、git推送
  • 打开拉取请求
只是在我的公关页面上(我使用的是Atlassian),然后我意识到我的同事实际上打开了另一个公关页面,该页面仍然打开,但他的分支命名与我的不同

PR页面的顶部显示了分支机构的名称以及要合并的分支机构,这就证明了这一点

  • 我的同事:
    feature/Issue01->develope
  • 我的版本:
    remotes/origin/feature/Issue01->develope
我的问题是: 1.我正在创建一个额外的分支吗?如果是,如果将其合并到开发中,是否会导致任何问题

  • 如果我试图使我的分支名称与我同事的分支名称相同,这是我应该键入的命令吗:
    git checkout-b feature/Issue01 remotes/origin/feature/Issue01
  • 用于创建新的本地分支。你用得不太对

    最简单的方法就是
    git签出功能/Issue01
    。如果该分支在本地不存在(它不应该存在),git将检测到它确实存在于上游,它将提取它并为您设置跟踪信息

    在任何分支上,您都可以使用
    git branch-u origin/feature/Issue01
    让您当前所在的本地分支跟踪您指定的任何上游分支



    或者,类似的方法也可以工作:
    $git checkout-b feature/Issue01——跟踪原点/feature/Issue01

    是的,您确实创建了一个额外的分支。我应该澄清一下,你创建了一个新的本地分支机构。您的本地分支机构似乎正在跟踪上游分支机构。那可能不是你想要的。您希望在已经存在的
    feature/Issue01
    中使用代码吗?@mkasberg是的,我希望在分支
    feature/Issue01
    中使用我的东西。但似乎我已经创建了另一个不必要的分支。在这种情况下,正确的工作流程应该是什么?据我所知,
    git checkout-b
    是必需的,这样我就可以在跟踪
    功能/Issue01
    时创建本地分支,还是我在这种情况下错了?您当前有一个名为
    远程/origin/feature/Issue01
    的本地分支跟踪远程分支
    开发
    。这可能会在将来给您带来问题,所以如果我是您,我会删除该本地分支(在其他地方保存代码之后)。您可以使用git branch-d
    。然后我猜错误是盲目地复制并粘贴到
    remotes/origin/…
    中进行签出,从而导致新的分支创建。。但是现在我已经将我的
    remotes/origin/feature/Issue01
    作为PR推送到我的回购协议中,那么
    git branch-d
    会解决这个问题吗?我是否可以假设,在使用您建议的第一种方法时,
    remotes/origin/
    不应该添加到命令中?您应该拒绝PR,然后使用服务器软件用来删除远程分支的任何机制,或者使用
    git-push:
    ,如果可以的话(有些服务器堆栈不喜欢)。然后
    git branch-d
    清理您的本地分支。这取决于您是如何推动的。您的本地分支机构
    remotes/origin/feature/Issue01
    正在跟踪远程分支机构
    develope
    。因此,如果让git选择要推动的分支,它就会推动开发。如果您告诉git将它推到哪里,请参阅Darren的评论。