現在私が働いている場所では、バージョン管理にGitを使用した次のセットアップ(ASP.NET Web開発用)があります(これは比較的新しいものです)。
内部ネットワークでアクセス可能なIISを実行するリモートサーバーである「開発」サーバー。ここで、安定した開発Webサイトのビルドを展開して、会社全体で表示できるようにします。このサーバー上に、プロジェクトごとにGitリポジトリー(通常はWebサイト)を作成します。
次に、開発者はこのリポジトリをローカルマシンにプルしてローカルで作業し、変更をローカルでコミットしてから、最後にそれらの変更をリモートリポジトリ(開発サーバー)にプッシュして、マスターブランチにマージします。
私たちが抱えている問題は、ソースコードがアセンブリ(DLL)に組み込まれると、これらがローカルのGitリポジトリに追加され、実際には存在しないはずのバイナリファイルで乱雑になることです(ソースから派生できるため)。ただし、DLLを含めない場合(つまり、DLLを.gitignoreに入れる場合)、リモートリポジトリに変更をプッシュすると、DLLが/ binフォルダーから失われ、サイトが機能しなくなります。これを回避する唯一の方法は、変更をプッシュした後、開発サーバーでサイトを再構築することです。
これを回避する方法はありますか?理想的には、ローカルリポジトリからのDLLを無視し、それでもリモートサーバーに「プッシュ」する方法が必要ですか?または、変更がプッシュされたときに、どういうわけかリモートサーバーでビルドをトリガーしますか?