如何使用 Visual Studio Code 作为 Git MergeTool 的默认编辑器 [英] How to use Visual Studio Code as the default editor for Git MergeTool

查看:45
本文介绍了如何使用 Visual Studio Code 作为 Git MergeTool 的默认编辑器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

今天我试图在 Windows 命令提示符下使用 git mergetool 并意识到它默认使用 Vim,这很酷,但我更喜欢VS 代码.

我怎样才能让 Visual Studio Code 作为我的 GUI 来处理 Git 的合并冲突(或者甚至作为比较工具)?

解决方案

截至

有关从命令行启动 code 的进一步阅读,请查看 本文档.

有关 git mergetool 的更多信息,请查看本文档.

Today I was trying to use the git mergetool on the Windows command prompt and realized that it was defaulting to use Vim, which is cool, but I'd prefer VS Code.

How can I have Visual Studio Code function as my GUI for handling merge conflicts (or even as a diffing tool) for Git?

解决方案

As of Visual Studio Code 1.13 Better Merge was integrated into the core of Visual Studio Code.

The way to wire them together is to modify your .gitconfig and you have two options.

  1. To do this with command line entries, enter each of these: (Note: you may need to replace ' with " if you are not using Windows Git Bash, macOS or Linux as clarified by Iztok Delfin and e4rache)

    1. git config --global merge.tool vscode
    2. git config --global mergetool.vscode.cmd 'code --wait $MERGED'
    3. git config --global diff.tool vscode
    4. git config --global difftool.vscode.cmd 'code --wait --diff $LOCAL $REMOTE'

  2. To do this by pasting some line in the .gitconfig with Visual Studio Code.

    • Run git config --global core.editor "code --wait" from the command line.

    • From here you can enter the command git config --global -e. You will want to paste in the code in the "Extra Block" below.

        [user]
            name = EricDJohnson
            email = cool-email@neat.org
        [gui]
            recentrepo = E:/src/gitlab/App-Custom/Some-App
        # Comment: You just added this via 'git config --global core.editor "code --wait"'
        [core]
            editor = code --wait
        # Comment: Start of "Extra Block"
        # Comment: This is to unlock Visual Studio Code as your Git diff and Git merge tool
        [merge]
            tool = vscode
        [mergetool "vscode"]
            cmd = code --wait $MERGED
        [diff]
            tool = vscode
        [difftool "vscode"]
            cmd = code --wait --diff $LOCAL $REMOTE
        # Comment: End of "Extra Block"
      

Now from within your Git directory with a conflict run git mergetool and, tada, you have Visual Studio Code helping you handle the merge conflict! (Just make sure to save your file before closing Visual Studio Code.)

For further reading on launching code from the command line, look in this documentation.

For more information in git mergetool check out this documentation.

这篇关于如何使用 Visual Studio Code 作为 Git MergeTool 的默认编辑器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆