ソース コードの git リポジトリと並行して、ビルドの履歴にもアクセスできるようにしたいと考えています。確かに、手動でファイル/ディレクトリを作成することもできます67b75589ba57b90e83f9b9a121f8c4b61d0ea897.exe
(または、最新のタグに関連する命名システムを使用することもできます) が、それはかなり不快です。代わりにあると便利なのは、2 つ目の git リポジトリです (はい、git がバイナリに最適ではないことはわかっていますが、バイナリは小さく、まだ浅いクローンを持つことができます)、同じコミット メッセージを含みますが、バイナリのみが含まれます。
私が言いたいことを明確にするためにsource.c
、 にコンパイルされるソースファイルがapplication.exe
あり、ソースリポジトリの 67b75589ba57b90e83f9b9a121f8c4b61d0ea897 をsource.c
コミットメッセージ「Fixed issue #5123」で変更するとします。application.exe
次に、並列リポジトリには、新しいコミットとコミットメッセージ「fixed issue #5123」(元のコミット ID を追加で参照する可能性があります) を含む新しいコミットが可能な限り自動的に含まれる必要があります。
おそらく、コンパイルを実行し(失敗時に警告を出して中止する)、最新のコミットIDとメッセージを抽出し、バイナリを別のリポジトリにコミットするポストコミットフックを介してこれを実装します。しかし、より良い解決策を提案できるかもしれません-gitを使用する必要はありませんが、git bisect
(スピードアップのために事前にコンパイルされたバイナリを使用した)経由の潜在的なサポート回帰テストは、おそらくgitの最適ではないバイナリサポートを上回るでしょう...