私の会社では、長年にわたりクラウドTFSホストを使用しています。ホストはインターネットから消えてしまい、多くのコードとすべての履歴が失われました。 Visual Studio Onlineで新しいソースコード処理をかなり迅速にセットアップする必要があり、やり方についていくつかのヒントが必要です。多くの小規模プロジェクトと単一開発者によるチームサービス
は、現在のソリューションは、私が開始する前に長く設定し、様々な理由のために私は現在、唯一の開発者ですました。これは将来変更される可能性がありますが、ビジュアルスタジオソリューションごとに複数の開発者が存在することはありません。
私は、Visual Studioで多くの小規模顧客、特定のプロジェクト(Windowsアプリケーション、Windowsサービス、WebAPIの、SSRS、SQL、エンティティフレームワーク)で動作します。プロジェクトの平均的なサイズは、コーディングの開始からデプロイメントまでに20時間かかります(さらに大きなプロジェクトがいくつかあります)。新機能やバグ修正は、配備後に追加されることがあります(数年後)。通常は2〜6時間のプロジェクトです。
現在のプロセスは、顧客ごとにTFSのプロジェクトを持っており、それぞれが最も一握りのVisual Studioソリューションで含まれています。ソリューション間に依存関係はなく、共通コードはNuGetで処理されます。
私たちは、クラウド内の約250のプロジェクトを持っていたと私は今のところ唯一のこれらの50を回復したとしても、私はローカルに持っていたものは、我々は遅かれ早かれ同様の数字となってしまいます。合計サイズは30GBでした(多くは、NugetパッケージフォルダのデフォルトチェックでTFSから来ています)。
ほとんどのプロジェクトでは、作業項目、かんばん、レポート作成などのALM機能は必要ありません。開発者だけがVisual Studioをオンラインで使用します。私はブランチ/プルリクエスト/マージプロセスで作業したいと思います。 Git/Mercurialから来て、私はTFSで心地よいと感じたことはありません。
だから私の質問は次のようになります。
プロジェクトを構築するための良い方法は何ですか?良い方法には何のVisual Studioソリューション
あたり(今日のように)各顧客のためにすべて
- A VSTS-プロジェクト
- A VSTS-プロジェクトの
- シングルVSTSプロジェクトリポジトリを構造化しますか?顧客ごと
- 1つのリポジトリのVisual Studioソリューションあたり
- 1つのリポジトリ
すべてのための
- 1つのリポジトリ%はアクティブではありません。私は通常、Visual Studioのインスタンスを3〜5回実行し、いつでもさまざまなソリューションで実行します。
私は多くの推奨事項を読んだことがありますが、それらはすべて長寿命のプロジェクトおよび/または開発者チームに対処しているようです。
私の主な懸念事項は以下のとおりです。それは新しい顧客またはVisual Studioのソリューションを追加することで、どのくらいの仕事
- (毎週起こる)
- は、時間をはじめ。外部の開発者が関与することもあります。それは一般的ではありませんが、私はクローン/プル(セキュリティは問題ではない)の多くの時間を費やすことを望んでいません。
- 標準。私は、他の開発者のために文書化するのを容易にするために、標準/ベストプラクティスにできるだけ従うようにプロセスを欲しがっています。例えばプロジェクトの名前に情報をエンコードしたり、フォルダー構造を強制したりすることはありません。
お返事ありがとうございます。ちょうど私はあなたを正しく理解しています。顧客あたりVSTSプロジェクトを1つ、次にVSソリューションごとに1つのリポジトリを意味します。 @ starain-MSFTが別の答えで示唆しているように、なぜそれがすべてのプロジェクトの単一のプロジェクトより優れていますか? – adrianm
お客様のプロジェクトには2つの理由があります。** 1。**これらの顧客は相互に関連しておらず、異なる顧客のさまざまな要件と機能を便利に管理できます。 ** 2。**あなたのプロジェクト/ソリューションは本当に大きなサイズのため、配布すると恩恵を受けるでしょう。そして、理由の両方で、両方の方法が機能し、多少個人的に依存しているので、Starainの提案を受け入れることができます。 –
これは私たちがやったことであるので、これを答えにしました。チームプロジェクトには複数のリポジトリを持ついくつかの課題がありますが、これまでのところ管理可能です。 – adrianm