gpt4 book ai didi

emacs - 如果我有一个文件和一个 diff,而不是同一个文件的两个版本,我可以使用 ediff 吗?

转载 作者:行者123 更新时间:2023-12-04 07:05:08 24 4
gpt4 key购买 nike

使用 tf.exe diff ,我可以获得差异。

我可以将它与 ediff 一起使用来可视化 emacs 中的差异吗?

我的印象是 ediff 通常需要 2 或 3 个文件。我只有一个文件和一个差异。

最佳答案

您可能会开始工作的一个选项是使用

M-x ediff-patch-buffer

它将提示您输入补丁文件(或缓冲区,如果您已经打开它),以及要修补的缓冲区。然后它将带领您克服差异。

因为 diff 显示了从存储库版本到当前版本的更改,所以补丁的方向是错误的。我会编写一个生成正确差异的命令并使用它 - 如果你真的想使用差异。

就个人而言,我可能会尝试插入一些代码来获取 'ediff-revision (我已经绑定(bind)到 C-x v - )让它工作。

或者只是写一些遵循这个伪代码的 lisp(因为我没有 tf 进行实际测试):
(defun ediff-tf-file-with-previous-version (file &optional version)
"DTRT and call ediff with the previous version of this file"
(interactive)
(ediff-files (progn
(unless version
(setq version (<parse-to-get-version> (shell-command (concat "tf.exe properties " file)))))
(shell-command (concat "tf.exe view " file (<munge-itemspec-version> version) " > " file ".older")))
file))

感谢 R Berg 的修复

好像有人写了一个基本的 Team Foundation 模式,你可以从 wiki page here 获取它。 .看起来它没有在 ediff 中插入任何东西尽管。

关于emacs - 如果我有一个文件和一个 diff,而不是同一个文件的两个版本,我可以使用 ediff 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1224832/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com