今日、私はWindowsのコマンドプロンプトでgit mergetool
を使おうとしていましたが、VIMを使うのはデフォルトでは駄目だと気付きましたが、VSCodeを使うほうがいいです。
どうすればVisual Studio CodeをGitのマージコンフリクトを処理するための(または差分ツールとして)GUIとして使用できますか?
VSCode 1.1 Better MergeはVSCodeのコアに統合されました。
それらを結び付ける方法はあなたの.gitconfig
を修正することですそしてあなたは2つのオプションを持ちます。
(注:Iztok Delfinとe4racheで明確にされているように、Windows Git Bashでは"
を'
に置き換えてください)
git config --global merge.tool vscode
git config --global mergetool.vscode.cmd "code --wait $MERGED"
git config --global diff.tool vscode
git config --global difftool.vscode.cmd "code --wait --diff $LOCAL $REMOTE"
これを行うには、.gitconfig
VS Code付き に行を貼り付けます。
git config --global core.editor "code --wait"
を実行します。ここから、コマンドgit config --global -e
を入力できます。以下の「追加ブロック」にコードを貼り付けてください。
[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 VSCode 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
を実行してください、そして、多分、あなたはマージ競合を処理するのを手助けするVSCodeを持っています! (VSCodeを閉じる前に、必ずファイルを保存してください。
コマンドラインからcode
を起動する方法については、 docs を参照してください。
git mergetool
の詳細については、これらをチェックしてください docs 。
二重引用符を単純な引用符に置き換える必要がありました。
git config --global difftool.vscode.cmd 'code --wait --diff $LOCAL $REMOTE'
それが正しく機能するために。
(二重引用符で囲むと、$ LOCALと$ REMOTEはそれらの値に置き換えられます)
WindowsのコマンドプロンプトではなくGit Bash for Windowsを使用している場合に必要です。