5

次の分岐設定を備えたTFS環境があります

  • Dev - 開発者向けの主要な作業ブランチ
  • メイン - 安定したリリース可能なブランチ
  • ホットフィックス - 通常のリリース サイクルの一部ではない製品コードの修正用

Nuget を使用するように自分自身を設定しています。Dev ブランチのコードが「Dev」nuget リポジトリからパッケージをプルし、「メイン」リポジトリからメインなどをプルするように構成したいと考えています。

これで、使用するリポジトリを nuget.exe に指示する単一のファイルがブランチのルートに配置されるようになるまで、物事を理解できました。

私は今、これらのファイルの内容をブランチごとに異なるものにする方法を見つけようとしています。それらを各ブランチに個別にチェックインできますが、Dev->Main および Main->HotFix からのマージで問題が発生します。

だから、私がやりたいことは、この特定の構成ファイルが Dev->Main などからのマージの一部から除外されることだと思います。それを行う方法はありますか?

または、代わりに、さまざまなブランチのさまざまな nuget リポジトリを指すという点で、Nuget でやりたいことを達成する他の方法はありますか?

4

1 に答える 1

5

あなたはいくつかのトリックをしなければならないでしょう...

  • ブランチごとに異なるフィードを用意します。複数のフィードを設定する簡単な方法は、www.myget.org です。
  • この動作に登録するソリューションで NuGet パッケージの復元を有効にします
  • ソリューションの .nuget\nuget.config ファイルに、次を追加します。
<configuration>
  <packageSources>
    <add key="Branch X packages" value="http://www.myget.org/F/corpxyzbranchxyz" />
  </packageSources>
  <disabledPackageSources />
  <activePackageSource>
    <add key="Branch X packages" value="http://www.myget.org/F/corpxyzbranchxyz" />
  </activePackageSource>
</configuration>

これ、ブランチごとに異なる nuget.config ファイルを用意する必要があり、マージ/ブランチするときは注意する必要があることを意味します。

于 2012-11-20T07:26:15.230 に答える