コマンドラインでgitを使用する場合、デフォルトのエディタとしてVisual Studio Codeを使用できるかどうか、つまりコミットコメントを作成するとき、およびコマンドラインからファイルの差分を見るときに、疑問に思います。
私はそれをマージするために使用することは不可能であることを理解しています(少なくとも分で)が、diffを見るためにそれを使用することが可能であるかどうか誰でも知っています。これを実現するための.gitconfigファイル
アップデート1:
私は過去に Notepad ++に対して行ったのと同様のアプローチを試しました 。
#!/bin/sh
"c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
そして使用:
#!/bin/sh
"C:\Users\gep13\AppData\Local\Code\app-0.1.0\Code.exe" "$*"
しかし、これはエラーメッセージになります。
C:\temp\testrepo [master +1 ~0 -0]> git commit
[8660:0504/084217:ERROR:crash_reporter_win.cc(70)] Cannot initialize out-of-process crash handler
Aborting commit due to empty commit message.
C:\temp\testrepo [master +1 ~0 -0]>
コードは予想される内容で正しく開きますが、応答を待っているわけではありません。つまり、[保存]をクリックしてウィンドウを閉じて[プロンプト]に戻ります。
アップデート2:
私はVSCodeに取り組んでいる開発者の一人から話を聞きました。この機能は現在サポートされていないようです:-(
https://Twitter.com/IsidorN/status/595501573880553472
この機能が追加されるのを見たい場合は、ここに投票を追加することを検討してください。
アップデート3:
私はこの機能がVSCodeチームによって採用されたことを 確実に知らされていたので 、今後のリリースが含まれることを楽しみにしています。
アップデート4:
下記の@ f-boucherosコメントのおかげで、私はVS Codeをコミットコメント、リベースなどのデフォルトエディタとして機能させることができました。それでもdiffツールとしても使用できるかどうか確認したいと思います。
アップデート5:
質問に対する一般的な回答のとおり、これはV1.0リリースのコードを使用して可能になりました。
最新のリリース(v1.0、March 2016でリリース)では、これで可能になりました デフォルトのgit commit/diffツールとしてVS Codeを使用 。ドキュメントから引用:
コマンドラインから
code --help
を実行できることを確認してください。
ヘルプが表示されない場合は、次の手順に従ってください。
Mac:を選択します。シェルコマンド:コマンドパレットからパスに 'Code'コマンドをインストールします。
- コマンドパレットはあなたが押すとポップアップするものです shift + ⌘ + P VSコード内(shift + ctrl + P Windowsの場合)
- Windows:インストール中にPATHに追加を選択したことを確認してください。
- Linux:新しい.debまたは.rpmパッケージを使ってCodeをインストールしたことを確認してください。
- コマンドラインから
git config --global core.editor "code --wait"
を実行します。これで
git config --global -e
を実行し、Gitを設定するためのエディタとしてVS Codeを使用できます。 VS Codeを差分ツールとして使用するためのサポートを有効にするには、以下を追加します。
[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
これは、VS Codeに渡すことができる新しい
--diff
オプションを利用して、2つのファイルを並べて比較することができます。まとめると、VS CodeでGitを使用できる場所の例をいくつか示します。
git rebase HEAD~3 -i
はVS Codeを使って対話的なリベースを可能にしますgit commit
ではコミットメッセージにVS Codeを使用することができます- 対話式追加の場合は
git add -p
の後にe
git difftool <commit>^ <commit>
は変更のための差分エディタとしてVS Codeを使うことを可能にします
私が理解していることのために、VSCodeはもうAppDataにありません。
そのため、コマンドプロンプトウィンドウでそのコマンドを実行して、デフォルトのgitエディタを設定します。
git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"
パラメータ-w
、--wait
は、戻る前にウィンドウが閉じるのを待つことです。 Visual StudioのコードはAtomエディタに基づいています。アトムもインストールしている場合は、コマンドatom --help
を実行してください。あなたは、ヘルプの最後の議論が待つのを見るでしょう。
次回git rebase -i HEAD~3
を実行すると、Visual Studioのコードがポップアップ表示されます。 VSCodeが近づくと、Gitが先導します。
注:私の現在のVSCodeのバージョンは0.9.2です。
お役に立てば幸いです。
あなたはコマンドを使用する必要があります:
git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"
Git Bashからエディタを起動できることを確認してください
短いパスでCode.exeを使用したい場合は、.bash_profileに次の行を追加してください。
alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"
そして今、あなたはvscode
コマンドだけを使ってそれを呼び出すことができます
いくつかの追加情報:
セットアップは%PATH%にVisual Studioのコードを追加するので、コンソールから 'code'と入力してそのフォルダのVS Codeを開くことができます。 %PATH%環境変数への変更を有効にするには、インストール後にコンソールを再起動する必要があります。
別の便利なオプションは、EDITOR
環境変数を設定することです。この環境変数は、使用するエディターを知るために多くのユーティリティで使用されます。 Gitは、core.editor
が設定されていない場合にも使用します。
次を使用して現在のセッションに設定できます。
export EDITOR=code --wait
この方法はgit
だけでなく、他の多くのアプリケーションがVS Codeをエディターとして使用します。
この変更を永続的にするには、たとえば~/.profile
に追加します。他のオプションについては この質問 をご覧ください。
私は自分の.gitconfig
を開き、それを次のように修正しました。
[core]
editor = 'C:/Users/miqid/AppData/Local/Code/app-0.1.0/Code.exe'
それは私のためにそれをやった(私はWindows 8を使っている)。
しかし、自分の Git Bash consoleで任意のgit commit
を試したところ、次のようなメッセージが表示されました。
[9168:0504/160114:INFO:renderer_main.cc(212)] Renderer process started
これによる影響が何であるかわからない。
良い知らせです。これを書いている時点で、この機能はすでに 0.10.12-insiders リリースに実装されており、 0.10.14-insiders を介して実行されています。そのため、次のバージョンの{ 1.0 VS Releaseのリリース } _に含める予定です。
実装参照: 実装-w/ - waitコマンドライン引数
GitPad 現在のテキストエディタをGitのデフォルトエディタとして設定します。
私のWindows 10での.txt
ファイルのデフォルトエディタはVisual Studio Codeで、GitPadを実行するとGitのデフォルトエディタになりました。私は質問で言及された問題を経験していません(Gitは私の場合はVS Codeウィンドウが閉じるまで待ちます)。
(.exe
ファイルへのリンクは私にはうまくいきませんでした。ソースを自分でコンパイルする必要があるかもしれません。)
Mac端末アプリでこのコマンドを実行してください。
git config --global core.editor "/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code"
前回の回答にこれらのバックスラッシュを追加するだけです。Windows10 CMDを使用していますが、スペースの前にバックスラッシュがないと機能しません。
git config --global core.editor "C:\\Users\\your_user_name\\AppData\\Local\\Programs\\Microsoft\ VS\ Code\\Code.exe"
64ビットインサイダーエディションを使用しているWindows 10では、コマンドは次のようになります。
git config --global core.editor "'C:¥Program Files¥Microsoft VS Code Insiders¥bin¥code-insiders.cmd'"
'Program Files'ディレクトリで 'code-insiders.cmd'を 'code.cmd'に変更することもできます。このようにして 'code'コマンドを使用することができます。のファイルの編集を開始します。ディレクトリ
これができるかどうかはわかりませんが、gitconfigファイルでこれらの追加を試すことができます。
実行可能なVisual Studioのコードを指すように、これらの値からkdiff3を置き換えてください。
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
.txtファイルを開くためのデフォルトとしてVisual Studioコードを設定しました。そして次に、簡単なコマンドgit config --global core.editor "'C:\Users\UserName\AppData\Local\Code\app-0.7.10\Code.exe\'"
を使いました。そして、すべてうまくいっています。