我正在研究一个项目并且我提交了我的第一个拉取请求,而我正在等待的时候,我想继续处理我的项目,从我合作的工作中积累起来,这仍然悬而未决.现在我有:
*master
user_story_1
Run Code Online (Sandbox Code Playgroud)
user_story_1 有拉开请求.
现在我正在尝试创建一个新的分支user_story_2,我可以继续我离开的工作user_story_1.如何在Git中执行此操作而不会遇到任何冲突或影响我的挂起合并?
ale*_*ete 60
我假设你想user_story_2在你完成的工作之上开始新的分支user_story_1.这是我在这种情况下使用的工作流程:
Open Pull请求user_story_1:
* (user_story_1)
*
/
* (master)
*
*
Run Code Online (Sandbox Code Playgroud)user_story_2基于以下内容创建新分支user_story_1:
$ git checkout -b user_story_2 user_story_1
* (user_story_1, user_story_2)
*
/
* (master)
*
*
Run Code Online (Sandbox Code Playgroud)在新分支上工作:
* (user_story_2)
*
* (user_story_1)
*
/
* (master)
*
*
Run Code Online (Sandbox Code Playgroud)Pull Request合并:
* (user_story_2)
*
* | (master)
|\|
| * (user_story_1)
| *
|/
*
*
*
Run Code Online (Sandbox Code Playgroud)删除旧分支:
* (user_story_2)
*
* | (master)
|\|
| *
| *
|/
*
*
*
Run Code Online (Sandbox Code Playgroud)将新分支重新引入master:
* (user_story_2)
*
/
* (master)
|\
| *
| *
|/
*
*
*
Run Code Online (Sandbox Code Playgroud)Ath*_*eti 16
我对此的首选工作流程:
git checkout -b user_story_1.user_story_1。user_story_1.打开 PR 。user_story_1,git checkout -b user_story_2。user_story_2。user_story_1合并到 master,切换到user_story_2并执行git rebase -i master。user_story_2要包含在 rebase中的提交列表。删除来自user_story_1.user_story_2重新基于 master 并且只有它的提交。为您的每个故事/功能从主人创建一个新分支.
在合并每个分支之前,要么将master合并到该分支中,要么将分支重新绑定到master上.后者有我的偏好,但最终结果是一样的.
你将会遇到冲突,没有办法解决这个问题.但是,您想要解决分支中的冲突; 不在主人.这样,您可以在解决冲突之后测试您的分支,然后再将其合并到master中.
| 归档时间: |
|
| 查看次数: |
6779 次 |
| 最近记录: |