git - 如何在文本编辑器中查看 git diff?

标签 git git-diff

如何在像 Atom 这样的普通旧文本编辑器中查看 git diff?我不想设置或使用差异工具,我只想在任何基本的文本编辑器中查看差异。

我看到的关于设置差异工具的其他问题的答案,但我只想指定一些随机文本编辑器。


附加问题:

  • 差异工具和任何文本编辑器有什么区别?

最佳答案

How do I view a git diff in a plain old text editor like Atom? I don't want to set up or use a diff tool, I just want to view the diff in any basic text editor.

差异输出只是文本,因此您可以将其重定向到文件并打开该文件,或者(取决于编辑器和平台)将输入直接通过管道传输到编辑器。

如果您确实想将编辑器作为差异工具运行,the documentation描述如何调用编辑器。您可能需要一个包装脚本来调用带有环境变量的 atom 在命令行的正确位置。

Side question: What's the difference between a diff tool and any text editor?

通用文本编辑器不太可能像专用工具那样显示差异。至少,如果它能够识别格式,它可能会突出显示特定于差异的部分。

真正的差异工具通常会让您有机会查看文件的旧版本和新版本,并直观地显示更改所在的位置。它也可能突出显示行内更改(差异本身是基于行的)。


我通常反对文字图片,但因为我们真的在讨论界面......

  1. git diff 的输出在文本编辑器中打开: diff opened in text editor 这与仅在终端中读取差异几乎没有什么不同,因此我看不到太多好处。它确实突出显示了 index 行,但这只有在我在单个差异中扫描多个大块时才真正有用。

  2. GVim Fugitive 插件显示相同的变化: change in gvim with fugitive 这是我的编辑器内部使用 Fugitive 插件的 View 。您可以看到我从 join 行中删除了一个空格的行内突出显示。如果我继续在右 Pane 中输入,它甚至会实时更新。这也是唯一能正确语法高亮源代码的地方。

  3. 使用 git difftool 在 meld 中打开相同的更改 same change in meld from difftool 这是更改如何适合整个 IMO 文件的最友好的 View 。

关于git - 如何在文本编辑器中查看 git diff?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58663161/

相关文章:

git - 如何为 Git 子模块使用 SSH 而不是 HTTP?

GIT - 克隆时出现 'early eof' 错误

git - 为什么 Sourcetree 不支持在 Git-flow 分支名称中使用 '/'?

git - 查找在提交之间发生更改的目录

windows - git 克隆的权限被拒绝

git - flutter 安装期间的libusbmuxd版本错误

git diff 不会打印错误文件名的错误

git - 如何在 git 中使用不同的 merge 和差异工具?

git - 如何改进git的差异突出显示?

git-diff - 如何仅列出在两个分支之间更改的文件名