如何获取git diff以显示Windows快捷方式(* .lnk)文件中的差异?

时间:2018-11-22 18:52:39

标签: git diff git-diff windows-shortcut

(Q)如何获得git diff来向我展示Windows快捷方式文件(* .lnk)中的区别?

例如,

git status
On branch master
  modified:   Shortcuts/Dirs/DevNotes.lnk

git diff Shortcuts/Dirs/DevNotes.lnk
diff --git a/Shortcuts/Dirs/Dev Notes.lnk b/Shortcuts/Dirs/Dev Notes.lnk
index ebf8af1..8f466c3 100644
Binary files a/Shortcuts/Dirs/Dev Notes.lnk and b/Shortcuts/Dirs/Dev Notes.lnk differ

我不想说Binary files differ,而是希望看到类似的东西:

- c:\users\user1\myenv\Docs\DevNotes
+ c:\users\user1\mystuff\myenv\Docs\DevNotes

这使我可以更轻松地决定是要提交更改还是将其保留在主机本地。

我进行了一些搜索,发现Microsoft似乎正在更新快捷方式文件,因为它就是这样做的。参见How to track .lnk files in git?。有趣的是,这也许就是为什么我的* .lnk文件即使实际上没有更改也显示为不同的原因。

我的信念是

    可以将
  1. Git配置为支持不同文件类型的自定义diff程序。 diff.externalgitattributes看起来很有希望。

  2. Windows * .lnk文件可以通过某种方式进行比较。这是一个起点Extract Path from shortcut link - windows batch

  3. 我可以告诉git使用仅知道如何区分* .lnk文件的自定义脚本。

我已经搜索并发现了一些东西,但是已经没有了:

0 个答案:

没有答案