2012-01-16 9 views
2

私のプロジェクトのバージョン1.0はVisual Studio 2008で正常にビルドされますが、Visual Studioを2010バージョンにアップグレードすると、プロジェクトをビルドできませんでした(何らかの理由で)。GIT:安定したリビジョンのプロジェクトで出力ファイル(* .exe、* .libなど)をコミットする必要がありますか?

プロジェクトが変更され、新しいリリースが用意されました(バージョン2.0)。これはVisual Studio 2010上で正常に構築されます。

"my-project-version-1.0.exe"にアクセスするには、バージョン1.0をチェックアウトし、Visual Studio 2008をインストールしてVisual Studio 2008でビルドします。Visual Studioでビルドできません

私のプロジェクトの出力ファイルをコミットしませんでした。安定したリビジョンでのプロジェクトは、次の時代に私のプロジェクトの古いバージョンにアクセスする際

は、私が(* .EXE、* .LIBなど)の出力ファイルをコミットするべきでしょうか?

良いアイデアはありますか?

+0

より一般的な状況のためにもhttp://programmers.stackexchange.com/questions/128238/is-it-good-practice-to-store-framework-runtimes-under-source-control参照してください。 – VonC

答えて

4

非ソースファイルをバージョン管理下に置くことは、一般的にはお勧めできません。あなたが主張するのであれば、それを1回のコミットで追加し、次のコミットで削除し、そのコミットにタグを付けることができます。

ただし、実行可能ファイルを別々に保持することができます。たとえば、githubを使用する場合は、ファイルをアップロードして、後でダウンロードできるようにすることができます(たとえば、すでにコンパイルされた実行可能ファイルやライブラリなど)。

+0

バイナリが大きい場合、バイナリが削除されても履歴に残り、リポジトリを大きくします。 – johnny

+0

@ johnny、それらのインスタンスが1つしかリポジトリに残っていないのであれば、大したことではありません。確かに、彼はバイナリをどこかに保持したいので、スペースはとにかく浪費される必要があります。 – Shahbaz

2

安定したバージョンを使用している場合は、常にアーティファクトが公開されています(実行可能ファイル、ドキュメントなど)。

jenkinsの詳細については、こちらをご覧ください。

ちょうどメモ:リポジトリは、ソースコードと実行可能ファイルを生成するために使用できる他のすべてのファイル用です。 通常、リポジトリに実行可能ファイルを置かないでください。

2

最高のアイデアは個人的に私、そして私は、仕事でのリポジトリの外にコンパイルしたファイルを維持することを好む、すべてのプロのコンテキストでは、Visual Studioで2010

を動作させることであろう。バイナリ差分は意味をなさない。

代わりにソースコードが保持されるようにきれいにあなたのコンパイルされたファイルから分離し、リポジトリの外側(または別のレポで)すべてのバージョンのバックアップを保持します。

-1

バイナリをバージョン管理下に置きます。それらはコードとは別のディレクトリにあり、私たちのcmakeスクリプトは出力されたディレクトリにバイナリをコピーします。

/src /ディレクトリには/ bin /への外部リンクがあります。そのため、/ src /をチェックアウトするとバイナリが自動的に取得されます。 cmakeスクリプトはバイナリを/ src/bin /から/ build/debugまたは/ build/release(Visual Studio用)にコピーします。コンパイル後、更新されたバイナリは/ src/bin /にコピーされます

低レベルの変更、コンパイル、コミットが可能です。同僚が更新すると、自分のコードを再コンパイルする必要はありません。彼らはいくつかの層を何かに取り組んでいる。

関連する問題