1

Groovy スクリプト内から複数の >git コマンドを自動化できるようにしたいと考えています。次のようなコードを使用してプロセスを実行したいのですが...

def cmd = "${GIT_EXEC} submodule update --init ";
def process = cmd.execute(null, new File('.'));
process.consumeProcessOutput(System.out, System.err);
process.waitFor();
rc = process.exitValue();

これが問題です...

そのコマンドを手動で入力すると、鍵のパスフレーズを入力するように求められます。私の Groovy スクリプトを使用すると、プロンプトが表示されず、スクリプトがハングするだけです。:(

この分野に関連する他の投稿をいくつか見ました。一貫した応答は、 と呼ばれるものを使用することでしたssh-agent。そのツールは、私の Windows ボックスにも、プロジェクトの他の開発者や管理者の Windows ボックスにもありません。その Windows 対応バージョンを見つけてインストールするように依頼したくありません。

ここが私の状況が他の状況と異なるところです。シェルがパスフレーズを要求するのを防ぐ必要はありません。グルーヴィーなスクリプトを介してプロンプトが表示され、ユーザーがそれを入力でき、生活が正常に継続されることを嬉しく思います。

Groovy 内から呼び出したプロセスに、単にプロンプ​​トを鵜呑みにするのではなく、先に進んでユーザーと対話するように指示できる素晴らしい方法はありますか?

ここにはどのようなオプションがありますか?

4

1 に答える 1

0

プロセスを生成する代わりに、jgitのような純粋な Java Git クライアント ライブラリを使用して git とやり取りするのはどうですか?

于 2012-10-17T00:10:21.507 に答える