git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] mergetool--lib: add p4merge as a pre-configured mergetool option

From
RDReece Dunn <msclrhd@googlemail.com>
Date
Oct 30, 2009, 11:25 UTC
Message-ID
<3f4fd2640910300425q602471a6v1111a7dceee7746c@mail.gmail.com>
In-Reply-To
<200910301135.59831.markus.heidelberg@web.de>
2009/10/30 Markus Heidelberg <markus.heidelberg@web.de>:
Show 22 quoted lines
> Jay Soffian, 30.10.2009:
>> On Thu, Oct 29, 2009 at 9:02 PM, Markus Heidelberg
>> <markus.heidelberg@web.de> wrote:
>> > He didn't mean p4merge on other platforms, but other merge tools on Mac
>> > OS X. What about all the other merge tools already in mergetool--lib?
>> > Should they get special handling, too?
>>
>> If someone wants to scratch that itch, then yes. The default diff tool
>> for OS X has its helper already in /usr/bin (opendiff). p4merge is
>> arguably a better merge tool, and it installs as an app bundle in
>> /Applications. I'm not sure about the other diff tools, I haven't
>> looked.
>>
>> > And for Windows we could add C:\Program Files\MergeToolX\tool.exe for
>> > every merge tool.
>>
>> If it makes those tools easier to use with git, and if someone on
>> Windows wants to scratch that itch, then yes, we should.
>
> Another possible problem: the user can change the installation
> destination on Windows. What's the behaviour of Mac OS here? Is the
> instalation path fixed or changeable?

For Windows, the program should have an InstallDir or similar registry value in a fixed place in the registry to point to where it is installed (something like HKLM/Software/[Vendor]/[Application]/[Version]).

As for Linux, there is no guarantee that things like p4merge are in the path either. It could be placed under /opt/perforce or /home/perforce.

What would be sensible (for all platforms) is:
  1/  if [difftool|mergetool].toolname.path is set, use that (is this
documented?)
  2/  try looking for the tool in the system path
  3/  try some intelligent guessing
  4/  if none of these work, print out an error message -- ideally,
this should mention the configuration option in (1)

(3) is what is being discussed. It is good that it will work without any user configuration (especially for standard tools installed in standard places), but isn't really a big problem as long as the user is prompted to configure the tool path. Also, I'm not sure how this will work with multiple versions of the tools installed (e.g. vim/gvim and p4merge).

- Reece
Previous: Markus HeidelbergNext: Jay Soffian
Message 14 of 18 in “mergetool--lib: add p4merge as a pre-configured mergetool option”
  1. mergetool--lib: add p4merge as a pre-configured mergetool optionScott Chacon, Oct 27, 2009
  2. Charles BaileyOct 27, 2009
  3. Junio C HamanoOct 28, 2009
  4. David AguilarOct 28, 2009
  5. Scott ChaconOct 28, 2009
  6. mergetool--lib: add p4merge as a pre-configured mergetool optionScott Chacon, Oct 28, 2009
  7. Junio C HamanoOct 28, 2009
  8. Jay SoffianOct 29, 2009
  9. Charles BaileyOct 29, 2009
  10. Jay SoffianOct 30, 2009
  11. Markus HeidelbergOct 30, 2009
  12. Jay SoffianOct 30, 2009
  13. Markus HeidelbergOct 30, 2009
  14. Reece DunnOct 30, 2009
  15. Jay SoffianOct 30, 2009
  16. Markus HeidelbergOct 30, 2009
  17. Charles BaileyOct 30, 2009
  18. Junio C HamanoOct 30, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.