Ond*_*žka 6 git command-line intellij-idea git-merge-conflict
我主要通过命令行使用 git,但为了解决冲突,我更喜欢 IDE。特别是 IntelliJ IDEA。
目前我尝试重新设置基准,并看到冲突。所以我需要进入IDEA并点击“VCS -> Git ->解决冲突”。然后返回控制台并运行git rebase --continue。
我想我可以配置git调用一个程序来处理冲突。
有没有办法从命令行调用 IDEA 的冲突解决?
就像是idea --git-resolve-conflicts $(PWD)。
也许在安装正确的插件后?这就是 IDEA 给我的帮助:
Usage:
/usr/local/bin/idea -h | -? | --help
/usr/local/bin/idea [project_dir]
/usr/local/bin/idea [-l|--line line] [project_dir|--temp-project] file[:line]
/usr/local/bin/idea diff <left> <right>
/usr/local/bin/idea merge <local> <remote> [base] <merged>
Run Code Online (Sandbox Code Playgroud)
首先,您必须在 ~/.gitconfig (全局)或 project/.git/config (仅适用于您的项目)中定义用于合并解析的工具
[mergetool "idea"]
cmd = /usr/local/bin/idea merge \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\"
trustExitCode = false
[merge]
tool = idea
Run Code Online (Sandbox Code Playgroud)
然后在正常会话中,当git merge命令后出现一些冲突时,调用:
git mergetool
Run Code Online (Sandbox Code Playgroud)
我编辑修改为 false trustExitCode 设置...以便在多个冲突文件时不会失败。shell 中的每个文件都会被询问确认当前文件的冲突是否已解决,然后继续处理下一个文件。