変更をコミットする前に、ファイル(または理想的にはツリー)の新しいgit shaを判断する方法はありますか?git:プリコミットフックでオブジェクトshasを使用する
背景:
私は自動的に一意の値、レポの別のディレクトリ内のファイルが変更されるたびに私のレポで1つのファイルに文字列を変更しようとしています。
これを行う簡単な方法は、サブディレクトリツリーのshaを一意の文字列として使用するgitフックを書くことだと考えていました。これはgit ls-treeでコミット後のフックとして行うのが簡単なようですが、余分なダミーコミットが毎回文字列をコミットして余分なノイズを生成する必要があります。
これまではgit hash-objectを実行することでこれが可能であると判断しましたが、最終的に計算するためにディレクトリ内のファイルのハッシュを再帰的に構築するためには、ディレクトリ(ツリー)のハッシュ私は、より単純なオプションがあるのだろうかと思っています。
これを行う理由を教えてもらえますか?それが問題の解決に役立つかもしれません。あなたがしようとしていることは間違ったことのように聞こえる。 – larsks
これらのファイルには、コードを展開するとき(データが変更された場合)、データベースにアップロードする必要のあるデータが含まれています。しかし、それを原子的にアップロードするために、データはユニークな識別子を使用してバージョン管理されます(コードの残りの部分は、別のファイルに格納されています)。 私は、データファイルの内容に基づいて一意の識別子を自動的に生成するのが便利だと思っていました.git shaはその法案にうまく収まるように思えました。 – agrifolia