「きれいなビルドを試して、それがうまくいくかどうか」を聞いたことがあります。頻繁に変なランタイムエラーは、再構築後に消えます。これにより、依存関係を適切に追跡することがビルドシステムの仕事であると私は思いました。ビルドシステムのバグを示す再構築時にランタイムエラーが消えていますか?
ランタイムエラー定義によるビルドシステムのバグ(make、msbuildなど)。別の言い方をすれば、クリーンビルドとノーマルビルドで異なる結果が得られた場合、それはビルドシステムのバグということになりますか?
編集:私はthe build environment is saneを想定しています - (代わりに古いタイムスタンプまたは同じの)ファイルが更新されると、その「最終変更」タイムスタンプが新しくなったことを意味しています。実際、私が知っているすべてのバージョン管理システムは、そうでなければ、タイムスタンプに依存するMakeシステムのようなビルドシステムを破り、更新が必要なファイルを追跡できないため、そのルールに従います。
あなたのシステムとm。この問題は、ソースモジュールの1つをロールバックすることによって解決されます。あなたは通常のビルドを行います。コンパイルされたモジュールのタイムスタンプはソースモジュールのタイムスタンプの後にあるため、そのモジュールを再コンパイルしません。ビルドされたシステムを実行しても、それでも問題はあります。クリーンビルドを実行すると、すべてのモジュールがビルドされます。今問題は修正されました。 –
Gitは、特にこの問題に対処するために、ファイルを置き換えるときのタイムスタンプを現在の時刻に設定します。私はすべてのバージョン管理システムがそうすると思います。 http://stackoverflow.com/a/2179876/492336 – sashoalm
私はちょうど私に起こったシナリオを記述しています。 –