1

現在のフォルダー内のファイルのいずれかが、指定された git の「ベース」リビジョンと比較して変更されているかどうかを検出するために git を使用する包括的な方法はありますか? 以下を検出する必要があります: - ステージングされていない変更済みファイル - まだコミットされていないステージング済みファイル - 問題のリビジョンよりも最近コミットされたファイル。

基本的に、特定のプロジェクトについて、開発マシンのコードがビルド サーバーによってビルドされたものと同じかどうかを判断するために達成しようとしていること。その場合、ビルドをスキップし、代わりに Maven リポジトリからビルド アーティファクトをダウンロードすることで時間を節約できます (ビルド サーバーがそこにインストールしたと仮定します)。それはまだほとんどがアイデアであり、うまくいかない理由は無数にあるかもしれませんが、最初に把握することの 1 つは、どのプロジェクトが基本的に変更されていないかについての情報を git が提供できるかどうかです。

ありがとう、/マーティン

4

1 に答える 1

0

git describe --dirtyあなたの要件をカバーするかもしれません。前のタグに関して現在の作業ツリーの説明を生成し、上部に余分なコミットのサフィックスを付けたり-dirty、ファイルが変更されてコミットされていない場合に使用したりします。

結果がプロジェクトの有効なバージョン タグである場合、そのビルドを使用できるはずです。

より細かい制御が必要な場合は、https://stackoverflow.com/a/2659808/733345を参照して、追跡されていないファイルも確認する方法を確認してください。

于 2013-10-05T11:33:22.930 に答える