How to skip "Hit return to start merge resolution tool" and open mergetool automatically

StackOverflow https://stackoverflow.com/questions/18410889

  •  26-06-2022
  •  | 
  •  

Question

Git asking to hit return button to open the mergetool for each conflict file one by one:

> git mergetool 
Normal merge conflict for '...':
  {local}: modified file
  {remote}: modified file
Hit return to start merge resolution tool (opendiff):

How can I avoid the hitting return step for my project and just open the configured merge tool automatically?

Était-ce utile?

La solution 2

Use the -y flag. From the documentation:

-y
--no-prompt
Don’t prompt before each invocation of the merge resolution program.

Autres conseils

To permanently skip the prompt, run:

git config --global mergetool.prompt false

To skip it for a single run of git mergetool, pass -y or --no-prompt:

git mergetool -y

Note: GIt 2.0.x (Q3 2014) won't display that message if you have explicitely defined your merge.tool.
No need for a -y anymore.

See commit 4ecc63d by Felipe Contreras (felipec):

mergetool: run prompt only if guessed tool

It's annoying to see the prompt:

Hit return to start merge resolution tool (foo):

Every time the user does 'git mergetool' even if the user already configured 'foo' as the wanted tool.

Display this prompt only when the user hasn't explicitly configured a tool.

See git-mergetool--lib.sh#L323-L339 for the "explicitly defined" part: git config merge.tool


This is clarified by commit c15bb0c:

-y::
--no-prompt::

Don't prompt before each invocation of the merge resolution program.

This is the default if the merge resolution program is explicitly specified with the --tool option or with the merge.tool configuration variable.

--prompt::

Prompt before each invocation of the merge resolution program to give the user a chance to skip the path.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top