ビルドを自動的にバージョン管理するというアイデアは気に入っていますが、AssemblyInfo.cs の変更をソース管理に戻す正しい方法がわかりません (または、ソース管理に戻すべきではありませんか?)。これは、ビルドごとに CI サーバーが自動的にコミットする必要があるものですか?
現時点ではBambooを使用しています。
ビルドを自動的にバージョン管理するというアイデアは気に入っていますが、AssemblyInfo.cs の変更をソース管理に戻す正しい方法がわかりません (または、ソース管理に戻すべきではありませんか?)。これは、ビルドごとに CI サーバーが自動的にコミットする必要があるものですか?
現時点ではBambooを使用しています。
CIサーバーとしてTeamcityを使用しており、AssemblyInfoパッチャーと呼ばれる機能が付属しています
これは、Assemblyinfo.csにteamcityビルド番号を一時的に追加し、アーティファクトをビルド生成してから、変更を元に戻します。このようにして、生成されたアーティファクトはビルド番号と同じバージョンになります。
ソース管理には、開発者が取り組んでいる現在のリビジョンとして、ビルド番号として「*」を使用して、assemblyinfo.csバージョンエントリを含めることができます。これは、リリースごとに更新できます。
編集1: Bambooを使用しているため、AssemblyInfo.csをチェックインせずに、Bambooで生成されたアーティファクトにビルド番号を設定する1つの方法を説明するリンクを次に示します。
私はあなたの質問にちょっと混乱しています。変更を保持する場合は、ビルド ジョブによって編集された後に AssemblyInfo.cs をコミットする必要があります。ただし、これらの問題を解決しようとするほとんどのビルド システムでは、変更が保持されません。ビルド タスクを開始する前に、ファイルをチェックアウトしてローカル バージョンを編集するだけです。