SOに関するFARの投稿を読みすぎて、分析麻痺に陥っています!
私は Visual Studio 2010 を使用しており、多くの小さなプロジェクトがあり、その多くはライブラリ/共有プロジェクトを参照しています。
共有コードに変更を加えた場合、依存プロジェクトをチェック/再構築する必要があることはあまり気にしません...これを支援するために、できるだけ早く TeamCity を配置しますが、今のところ、コードを修正するだけです次回はプロジェクトに取り組みます。多くのプロジェクトは「一度書いたら忘れる」ものなので、更新する必要はありません。
チームは現時点では非常に小さいですが (ME!)、今年初めに新しい開発者が期待されていますが、それでも非常に小さな社内チームであり、それが違いを生む場合はプロジェクト サイクルが速くなります。
現時点では、ディスク上に非常にフラットなフォルダー構造があるため、すべてのsln
ファイルはディスク上の「開発」フォルダーにあります。次に、VS プロジェクトごとにフォルダーがあります。これにより、共有が非常に簡単になりpackages
、nuget
.
database scripts
すべてを SVN (VisualSVN) にインポートしようとしています。 、docs
、UAT tests
などの追加を開始したいと思います。
- フラットな構造を維持し、ルート レベルで単一のトランク/ブランチ/タグを使用する必要がありますか?
- 構造を に展開して
an SVN folder-per-solution
を持ちtrunk/src
、trunk/docs
のようなものを管理nuget packages
しsvn:eternals
ますか? - 私はこれをハイブリッドに
an SVN folder-per-solution
しdocs
て、VS ソリューションを使用しますか?
注: 私は SVN を入れているので、Java 開発を持ち込むことができますが、ソース コードは単一の方法で管理できます。docs/sql sripts などをそこに入れたい DB チームとも共有します。DB と Java のそれぞれに個別のリポジトリを作成する予定ですが、それぞれに「同様の」フォルダ構造が必要です。
注 2: SVN のユーザー経験はありますが、管理者の経験はありません。新しい開発者はまったく経験がないので (彼らは AS/400 のバックグラウンドから来ています)、ソリューションが単純であればあるほど良いのです! 私は見てきましたがrepo per project and svn:extenals
、それは素晴らしい解決策ですが、常に管理と保守を行う必要があります (自分の仕事だけでなく! 笑)
「そこに行って、GTTSをやった」という人からのアドバイスは非常にありがたいものです。
OK、次のローカル ソリューション構造ができました。
すべての sln/suo ファイルが同じフォルダーにあります。
私のプロジェクト フォルダ/ファイルはすべてサブフォルダです。
これにより、プロジェクトの共有が非常に簡単になります...しかし、非常に面倒で、何かを見つけるのは難しいです:(
「参照」プロジェクトを管理するために svn:externals を使用する必要があるので、それらを分岐/タグ付けできますか?
ビルドされた DLL のみを参照する必要がありますか? また、それを実行するために必要なすべての管理を参照する必要がありますか?
VS2010 に自分のフォルダーを管理させて、たくさんの "nuget" フォルダーなどがあることを気にしないでください。
非常に非常に混乱しています...適切な答えはありますか?:(
注: CI 機能を提供するために、できるだけ早く TeamCity (または類似のもの) をミックスに追加します。CI に関する深刻な (そして無料の) 推奨事項も高く評価されています。