1. ホーム
  2. git

[解決済み] Git MergeTool のデフォルトエディターとして Visual Studio Code を使用する方法

2022-04-25 16:33:14

質問

今日、私は git mergetool Windows のコマンド プロンプトで、デフォルトで ヴィム それはそれでカッコイイのですが、私はむしろ VSコード .

どうすれば Visual Studio コード をGitのマージコンフリクトを処理するGUIとして(あるいは差分ツールとして)機能させることはできますか?

どのように解決するのですか?

現在 Visual Studio Code 1.13 より良いマージ がVisual Studio Codeのコアに統合されました。

それらを配線する方法は、あなたの .gitconfig で、あなたは 2つのオプション .

  1. コマンドラインエントリで行うには、それぞれを入力します。 (注意) '" Windows Git Bash、macOS、Linuxを使用していない場合は、Iztok Delfinと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. に何らかの行を貼り付けて行う。 .gitconfig Visual Studioのコードで .

    • 実行 git config --global core.editor "code --wait" をコマンドラインから実行します。

    • ここから、コマンドを入力します git config --global -e . 以下の "Extra Block" にコードを貼り付けてください。

        [user]
            name = EricDJohnson
            email = [email protected]
        [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"
      
      

では、Gitディレクトリでコンフリクトが発生している状態で、次のコマンドを実行します。 git mergetool そして、Visual Studio Code がマージの競合を処理するのを助けてくれます。(ただ、必ず ファイルを保存する をクリックしてからVisual Studio Codeを終了してください)。

起動に関する詳しい情報はこちら code をご覧ください。 このドキュメント .

の詳細については git mergetool チェックアウト このドキュメント .