Git BashはConsole2にありますか?


47

MSysGitは、現在選択されているフォルダーでGit Bashプロンプトを開くコンテキストメニュー項目をインストールします。ただし、これによりcmd.exeウィンドウが開くので、代わりにConsole2で開きたいと思います。

これを機能させるには、どのような修正が必要ですか?

この関連する質問を見てきましたが、答えは時代遅れです-MSysGitはvbaスクリプトを使用してbashプロンプトを呼び出しています。さらに、Console2でどのように動作させるかを明示的に述べていません。

更新:Consoleのかなり優れた後継者であるConEmuで同じことを行うことに興味があるかもしれません。こちらをご覧ください:ConEmuのGit Bash

回答:


44

ここに私がやったことがあります(あなたのパスはほぼ確実に異なります):

  1. 次の値を使用して、コンソールに新しいタブを作成します。
    • タイトル: Git Bash
    • アイコン: C:\Program Files\Git\etc\git.ico
    • シェル "C:\Program Files\Git\bin\sh.exe" --login -i
    • 起動ディレクトリ: %HOMEDRIVE%%HOMEPATH%
  2. のデータ値でHKEY_CLASSES_ROOT\Directory\shell\呼び出された新しいキーを作成しますgit_shell2Git Console Here
  3. のデータ値でHKEY_CLASSES_ROOT\Directory\shell\git_shell2\呼び出された新しいキーを作成しますcommand"C:\Users\charlesr\My Dropbox\Software\Console2\Console.exe" -t "Git Bash" -d "%1"

これがトリックです。

上記の手順2および3を実行する代わりに、次を.regファイルにコピーし(最初に独自の構成に合わせてパスを変更し)、レジストリにインポートすることができます。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\git_shell2]
@="Git Console Here"

[HKEY_CLASSES_ROOT\Directory\shell\git_shell2\command]
@="\"C:\\Users\\charlesr\\My Dropbox\\Software\\Console2\\Console.exe\" -t \"Git Bash\" -d \"%1\""

後でこれを見つける他の人への注意だけで、32ビットバージョンのConsole2を使用していることを確認してください。そうしないと失敗します。
-coderanger

最新のmsysgitでは、アイコンがC:\ msysgit \ share \ resources \ git.icoにあることに注意してください。
ケビン

1
Charlesに感謝しますが、なぜステップ2と3を実行するのですか?ステップ1を実行するだけで正常に動作します。なぜリポジトリ設定を変更する必要があるのか​​わかりませんか?
マークKadlec

2
とてもきちんとした。フォルダの「バックグラウンド」で(白い部分ではなく、アイコン)をクリックしたときに、コンテキストメニューを追加することができますgist.github.com/4048138
OZH

私はしばらくこのセットアップを使用していましたが、.batスクリプトを実行できないという不幸な制限があるようです(別のタブに切り替えずに、plainを実行しますCmd.exe)。これについての洞察はありますか?
エオイン14

7

vbaスクリプトは、同じディレクトリでGit Bashショートカットを起動するだけです。そのショートカットを変更して、Console2の実行可能ファイルを指すようにし、MSysGitのshをシェルとして使用するようにConsole2を構成します。


更新しました

新しいコンピューターでもう一度行う必要があったので、さらに詳しく説明します。

  • Console2の構成

    1. 「git」という新しいタブを追加しました
    2. アイコンを設定します C:\Program Files (x86)\Git\etc\git.ico
    3. シェルを C:\Program Files (x86)\Git\bin\sh.exe --login -i
  • Git Bashのショートカットの調整

    1. ショートカットターゲットをC:\Tools\Console2\Console.exe -t git -d .(Console2バイナリがある場所に)変更します
    2. Console2を起動して新しい「Git Bash Here」をお楽しみください!

秘trickは「-d」です。Console2に渡されるオプション:Git Bash.vbsスクリプトは、ショートカットを起動する前に、現在のディレクトリをマウスが指すポイントに変更します。

お役に立てば幸いです。


5

誰かがMinGW Bashを使用したいと思ってこれにつまずいた場合 、私はそのための解決策を見つけました。

  1. Console2、編集、設定、タブ、追加
  2. タイトル= Bash
  3. シェル= C:\MinGW\msys\1.0\bin\sh.exe -l
  4. レジストリを編集

    ni hklm:software/classes/directory/shell/bash/command `
      -f -va 'c:/Console2/Console.exe -t Bash -d %v'
    
  5. ~/.profile次を使用して作成します。

    cd -
    

cd manページ

これは、64ビットおよび32ビットのConsole2で機能します が、コーダーレンジャーがどのようなものであったかはわかりません 。


このコマンドには、コンソールがエラーを返す原因となるいくつかの問題があります。まず、HKCR\...\command引用符で囲まないでください。次に、新しいレジストリエントリのデータを指定するパラメーターを\-d渡すことを意味すると思います/d。また、データ値を二重引用符で囲む必要があり、-tパラメーターによってConsole.exeがまったく開かないため、除外します。:それは次のようになりますreg add HKCR\Directory\shell\Bash\command /d "C:\Console2\Console.exe -d \"%V\""
デヴィッド・ケネディ

cmd.exeBashでは文字列に単一引用符と二重引用符を使用できるため、まだ使用していることはコメントから明らかです。Bashへのアップグレードを検討する必要があります。
スティーブンペニー

0

「bash」という名前のConsole2タブがあると仮定します。

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\console2_bash]
@="Bash here (Console2)"
"NoWorkingDirectory"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\console2_bash\command]
@="\"C:\\Program Files (x86)\\Console2\\Console.exe\" -t Bash -d \"%V\"\\"
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.