Git: 特定のディレクトリで Git-Bash を開く

Git: 特定のディレクトリで Git-Bash を開く

Windows コマンド プロンプトから git-bash を起動する方法はいくつかあります。

"C:\Program Files\Git\bin\sh.exe"
"C:\Program Files\Git\git-bash.exe"
"C:\Program Files\Git\usr\bin\mintty.exe"

このような呼び出しを使用して、特定のディレクトリで git-bash を起動したいと思います。


コンテキストとして、私はこれをSAS拡張エディタ内から行っています。実際の呼び出しは

%sysexec(start "" "C:\Program Files\Git\bin\sh.exe" && exit);

SAS に馴染みのない方のために説明すると、%sysexecWindows コマンド プロンプトのインスタンスを開き、引数として指定されたコマンドを実行します。これは驚くほどうまく機能します。ただし、ホームだけでなく、特定のディレクトリで git-bash を起動できるようにしたいと思います。

この目的のために、次のエントリを作成できます.bashrc

cd /c/new/starting/dir

ただし、これを行うと問題になるのは、特定のフォルダーのコンテキスト メニューなどから git-bash を開くたびに、デフォルトのディレクトリが になることです.bashrc

私はそれを見るgit-bashの起動オプションが存在するまたは--cd-to-home--cd=<path>しかし、動作させることができません。例えば、

"C:\Program Files\Git\bin\sh.exe" --cd-to-home
"C:\Program Files\Git\bin\sh.exe --cd-to-home"
"C:\Program Files\Git\git-bash.exe" --cd-to-home
"C:\Program Files\Git\git-bash.exe --cd-to-home"
etc.

Windows コマンド プロンプトから特定のディレクトリで git-bash を起動することは可能ですか? 可能であれば、適切な構文は何ですか?

ボーナス: 50文字以内で書くとボーナスポイント

答え1

"C:\Program Files\Git\git-bash.exe" --cd=c:\path\to\folder

答え2

1つの解決策は、git-bashを開く前にディレクトリを変更することです。デフォルトでは、git-bashは現在のディレクトリで開きます。これを行うには、cdの前に呼び出しを入れますstart

cd C:\specific\dir\to\open && start "" "C:\Program Files\Git\bin\sh.exe"

これはSASで行われるため、特定のディレクトリをマクロ変数に格納できます。これにより、50文字以内という要件が保証されます(したがって、KEYSメニューのホットキーから呼び出すことができます)。コードのどこかにGitワーキングディレクトリを割り当てることができます。

%let gwd = C:\specific\dir\to\open;

通話は%sysexec次のようになります

%sysexec(cd &gwd. && start "" "C:\Program Files\Git\bin\sh.exe" && exit);

これは次のように動作します。まず、SAS は を展開します&gwd。次に、Windows コマンド プロンプトを開きます。 は、解決されたcdディレクトリに変更します&gwd.。次に、Git-bash が現在のディレクトリ ( に変更されました&gwd.) で開きます。最後に、git-bash が閉じるたびに、exitコマンドが実行され、Windows コマンド プロンプト セッションが閉じます。

残念ながら、最初の段階ではcd、呼び出しと git-bash の起動の間に、煩わしいほどの遅延が生じるようです。git cd-bash 内でコマンドを発行する方が速いのではないかと思いますが、このアプローチは機能します。

答え3

次のようなスクリプトを作成できます。

cd c:\path\to\particular\directory
"C:\Program Files\Git\bin\sh.exe" 

whatever.cmdまたはとして保存しwhatever.bat、ダブルクリックします。

便宜上、以下の手順でスクリプトをタスクバーに追加できます。これは思ったほど簡単ではないため (スクリプト自体をタスクバーにドラッグするだけでは不十分)、この手順も含めることにしました。

  1. スクリプトを右クリックして「ショートカットの作成」を選択します
  2. 作成したショートカットを右クリックし、「プロパティ」を選択します
  3. ショートカット、ターゲットの下に、次のように入力します。cmd /c C:\path\to\your\script\whatever.cmd
  4. 注記: フルパスを指定する必要があるかもしれませんコマンド(例: C:\Windows\System32\cmd.exe...)

タスクバーのコマンドをクリックするだけで、ワンクリックでスクリプトを実行できます。

関連情報