优雅地乱玩Linux-5-GitMerge工具Meld
2017-07-01
Git 的命令行来查看 diff 有些时候也是很鸡肋的。
Windows 习惯使用 TortoiseGit 进行各种 Merge 操作,到了 Linux 也应该准备一个。
一行代码解决所有问题
sudo apt-get install meld
正常情况下输入meld
会开启一个empty view
当然如果后面加一个repo
路径的话就可以查看对应的 diff 了
设置 meld 为默认 difftool
git config --global diff.tool meld
另外如果之后想换其他工具只要改一下 meld 就行
之后在运行:
git difftool
就会对当前 repo 进行 diff 查看,当然 meld 可以同时进行 merge 操作
查看所有
difftool
参数的命令man git-difftool OPTIONS -y, --no-prompt Do not prompt before launching a diff tool.
简单易懂,后面加个-y
参数即可
git difftool -y
但是依然很麻烦因为对应多个文件 meld 会依次弹出来,于是我又搜一下如何一次性 diff 整个文件夹
答案也很简单
Starting with git v1.7.11, you can use git difftool --dir-diff to perform a directory diff.
The answer that follows applies to git installations older than v1.7.11.
于是最终 diff 命令变成了:
git difftool -y --dir
这命令太麻烦了居然还有三个参数完全记不住怎么办
ZSH: _(:з」∠)_呵呵
打开ZSH
的配置文件:
gedit ~/.zshrc
然后在 alias 下面加一行:
# Example aliases # alias ohmyzsh="mate ~/.oh-my-zsh" alias jkl='jekyll s' alias subl='LD_PRELOAD=./libsublime-imfix.so subl' alias gdiff="git difftool -y --dir"
当然这里的别名可以随便换,修改后保存重开 Terminal 就可以使用 gdiff 对当前 repo 进行 diff 和 merge 了
- https://stackoverflow.com/questions/4955752/set-git-diff-to-a-default-value
- https://stackoverflow.com/questions/34119866/setting-up-and-using-meld-as-your-git-difftool-and-mergetool
- https://stackoverflow.com/questions/7897517/why-does-git-difftool-not-open-the-tool-directly
- https://stackoverflow.com/questions/1220309/git-difftool-open-all-diff-files-immediately-not-in-serial
关于本文
文章标题 | 优雅地乱玩Linux-5-GitMerge工具Meld |
发布日期 | 2017-07-01 |
文章分类 | Tech |
相关标签 | #Linux #LinuxReboot |
留言板
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER