使用Emacs ediff作为git diff工具

git diff默认的工具太难看了,而Emacs提供的Ediff则直观的多。 作为一名Emacs党,没道理放着这等神器不用,现在就写一下将ediff设置为git difftool的步骤:

  1. 创建一个脚本来帮助你调用Ediff进行文件比较。

        #!/bin/bash
    
        emacsclient -a "" -c -n --eval "(require 'ediff)" --eval "(ediff-files \"$1\" \"$2\")"

    注意我这里使用了emacsclient ,避免每次都要打开一个Emacs进程。

    emacsclient后面的 -a 参数表示如果没有启动Emacs daemon的话,则自动启动一个。 所以你无需事先启动Emacs daemon。

  2. 用git config配置difftool

    这里假设上一步创建的脚本为 ~/bin/ediff.sh,那么可以这么配置

        git config --global diff.tool ediff
        git config --global difftool.ediff.cmd "~/bin/ediff.sh \"\$LOCAL\" \"\$REMOTE\""
        git config --global difftool.prompt false

    OK,这就搞定了,试试运行 git difftool 看看效果吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值