Git合并请求到另一个合并请求的源分支的分支

Git合并请求到另一个合并请求的源分支的分支,git,branch,git-merge,Git,Branch,Git Merge,假设我遇到这样的情况: | _| | task2 _| | task1 | | master <-| <--_| | task2 _| | task1 | | master 而task1分支已向主服务器发出合并请求。然后,我也想合并task2。我选择目标分支task1cuz,然后在MR上我只能看到在task2分支上创建的提交,而不是task1+task2 所以情况是这样的: | _| | task2 _| | task1 | |

假设我遇到这样的情况:

    |
   _|
  | task2
 _|
| task1
|
|
master
  <-|
<--_|
  | task2
 _|
| task1
|
|
master
而task1分支已向主服务器发出合并请求。然后,我也想合并task2。我选择目标分支
task1
cuz,然后在MR上我只能看到在task2分支上创建的提交,而不是task1+task2

所以情况是这样的:

    |
   _|
  | task2
 _|
| task1
|
|
master
  <-|
<--_|
  | task2
 _|
| task1
|
|
master
master
或者我应该执行
task1->master
然后执行
task2->master


顺便问一下,无论哪种选择是正确的,我会以来自这些分支的唯一提交结束吗?我所说的唯一性是指master+task1+task2,而不像master+task1+task1是task2+task2的一部分?

我认为task2应该要求合并到master,而不是task1中。。。合并的正确顺序是第一个任务1,然后是任务2。如果在task1之前将task2直接合并到master中,task1将作为task2的一部分合并。

我知道我在这里评论的是一个1YO答案,但今年我发现我非常喜欢使用快速合并的线性历史。在这种情况下,我会将task1合并到master。然后将task2重新设置为master并合并它。通过这种方式,我将得到我所需要的东西,而我甚至不需要(尽管我可以)额外的指定合并的提交。顺便说一句,如果我按照您的建议执行此操作,我必须将task1重新设置为master,这会将task1的提交堆叠在master的所有提交之上(co-task1+task2),因此我会复制提交