在git中设置Notepad++ Compare作为差异工具?

17

有没有简单的方法将Notepad++的比较插件设置为Windows上Git的差异工具?我不确定它能否从命令行调用,所以可能不行。

Translated: 有没有简单的方法将 Notepad++ 的比较插件设置为 Windows 上 Git 的差异工具?我不确定它是否可以从命令行调用,因此也许不可行。

你知道git有一个内置的diff工具,对吧?那有什么问题吗? - ambagesia
1
我更喜欢 Notepad++ 的比较功能的外观。如果不行的话,我可以使用其他工具,只是想看看是否有这个选项。 - Ben G
这个问题的正确回答在这里 - nurettin
你为什么要这样做?在比较质量上,Compare工具在diff质量方面与git / tortoise git工具相比视觉和质量都较差。 - Tseng
3个回答

6
据我所知,Notepad++不允许为其插件自定义命令行选项,因此这可能有点棘手。您需要为其创建一个包装脚本或直接调用可执行文件。在我看来,鉴于有一些非常好的差异工具选项,这并不值得。
无论如何,git difftool允许您指定git用于差异比较的确切工具。您可以将以下内容添加到您的.gitconfig文件中:
[diff]
tool = araxis // enter your tool of choice here, Araxis is just an example

如果您想了解更多关于它的内容,这里有一个链接指向手册页面:http://www.kernel.org/pub/software/scm/git/docs/git-difftool.html


这是一个不太干净的解决方法,但您可以从另一个difftool(例如Meld)复制您的diff路径,在Notepad++中以并排视图打开它们,然后运行Compare插件。 - Jim Fell

3
我刚刚在这里发布了一个类似问题的解决方案(链接)。顺便说一下,将N ++作为差异查看器的主要原因之一是,例如,如果您正在使用N ++处理Git管理的代码,则始终可以直接“与GIT基线进行比较”(v1.5.6.3!)。另一个原因当然是在“真正”的编辑器中查看差异,具有语法高亮显示和所有其他众所周知的好处。

2

自从ComparePlus发布以来,将其设置为git的差异工具实际上非常容易。

ComparePlus是Compare的后续版本,我使用插件管理安装了1.1版。

在您的.gitconfig文件中,添加以下行(如果您将其安装在其他位置,请调整notepad++.exe的路径):

[diff]
tool = npp_compareplus

[difftool]
prompt = false

[difftool "npp_compareplus"]
cmd = \"C:\\Program Files\\Notepad++\\notepad++.exe\" -multiInst -nosession -pluginMessage=compare \"$REMOTE\" \"$LOCAL\"

使用 -multiInst 选项将在新窗口中启动文件比较,-nosession 选项将在新窗口中打开,而不会加载任何旧的/其他会话的文件。而-pluginMessage=compare 则告知 NPP 使用 ComparePlus 插件,并传递本地/远程文件的参数。

1
这是ComparePlus插件的GitHub存储库:https://github.com/pnedev/comparePlus 这里还有一个论坛帖子,一个用户有同样的想法:https://community.notepad-plus-plus.org/post/79818 您还可以将其用作7-Zip文件管理器的差异工具,方法是将START /B C:\PROGRA~1\Notepad++\notepad++.exe -multiInst -nosession -pluginMessage=compare %1 %2放入一个.bat文件中,并将其设置为选项中的比较程序。(请手动输入.bat文件路径,因为文件选择器只允许选择.exe文件) - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接