如何忽略合并冲突?

时间:2018-01-28 18:41:37

标签: git merge-conflict-resolution

我有下一次合并冲突:

<<<<<<< Updated upstream
    my( $c, $name ) =  (shift,shift);
  my %name =  defined $name ? ( name => $name ) : ();

||||||| merged common ancestors
    my( $c ) =  shift;
=======
    my( $c, $name ) =  (shift,shift);

  my %name =  defined $name ? ( name => $name ) : ();
>>>>>>> Stashed changes

<<<<<<< Updated upstream
    return $c->render_to_string( 'control/toggle', id => "toggle$id", %name, @_ );
||||||| merged common ancestors
  return $c->render_to_string( 'control/toggle', @_, id => "toggle$id" );
=======
    return $c->render_to_string( 'control/toggle', id => "toggle$id",  %name,  @_ );
>>>>>>> Stashed changes

如果空格中只有变化,是否可以选择忽略此类冲突?就像-w -b选项

一样

1 个答案:

答案 0 :(得分:2)

好吧,你不能忽视冲突,因为这意味着出了问题,你必须告诉Git你修复了冲突。

如果你真的想保持文件的原样,你可以删除冲突差异行,然后git add / git提交冲突的文件,以便保留文件的所有行。

否则,如果您想保留特定版本(“他们的”,意思是您尝试合并到本地代码库或“我们的”,意味着您的代码库),您可以使用:

git checkout --ours my/file

或者

git checkout --theirs my/file

然后,不要忘记提交文件,以便git不处于这种怪异的冲突模式。