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推送
- 打开拉取请求
- 我的同事:
feature/Issue01->develope
- 我的版本:
remotes/origin/feature/Issue01->develope
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的评论。