私はSvnの外部機能からnuget
に移行しています。これは大きなプロジェクトであり、これまでのところ悪い判断のようです。私のソリューションの1つには70のプロジェクトが含まれていますが、それらのほとんどに同じ共通リファレンス(ナゲットパッケージ)が含まれています。 以前の構造は、すべての参照がsvn externals
によって制御されていたので、私はちょうど亀のsvnの番号を更新し、更新 - クイックジョブをクリックしたときにいつでも、ソリューションごとの共通のLibフォルダでした。 現在、Visual Studioの中からパッケージからパッケージの以前のバージョンを削除し、新しいディレクトリを追加して、packages.config
のバージョンを更新し、csproj
のパスを更新すると思われるため、10-20時間もかかります。 70個のプロジェクトで7つのパッケージを更新して、ビジュアルスタジオを開いていると、時間がかかります。代わりに解決策を終了し、command-line
でナゲットの更新を呼び出すことですが、それはむしろ回避策です。以前のパスは同じでしたが、packages.config
のコンセプトは存在しませんでした。唯一の変更は、次の結論に至るテキストファイルのコードの数行でした。私がアップデートを行うたびに、ソースコントロールにチェックインする必要がある膨大な変更があり、それはちょっと面倒です。私はnuget install -ExcludeVersion
のフラグがありますので、バージョンをパスから除外して、csprojは変更されず、大きな利点があることがわかりました。それを使用するのがよい慣習ですか?パッケージをインストールするたびに自動的に使用するVisual Studioのサポートはありますか?ナゲットパッケージに「パスのバージョンを無視する」とマークする方法はありますか?私が知っている限り、これらの質問の答えは「いいえ、いいえ、いいえ」です。より大きなプロジェクトではどのようにナゲットを使うのですか?大きなプロジェクトでどうやってそれを扱うかについて、ナゲットについて読むことができるものがあれば教えてください。Svn外部からNugetへの移行 - 関心事
1
A
答えて
2
それぞれの問題を1つずつ説明しましょう。あなたの最初の質問は:
それを使用するのがいいですか?これは意見の対象です。インストール時に
ExcludeVersion
オプションを使用するプロジェクトが中断された場合は、それを使用することはできません。それ以外の場合は、プッシュで70ファイルを保存します。 2番目の質問:
パッケージをインストールするたびに自動的に使用するVisual Studioのサポートはありますか?私が知る限り(そして私が間違っているかもしれない)、これを行う方法はありません。しかし、これはすばやい研究から外れており、詳細は Nuget Config File Defaultsの中にあります(このような構成は見つかりませんでした)。
あなたは何を意味するのか少し混乱しています
「パスのバージョンを無視する」としてナゲットパッケージをマークする方法はありますか?しかし、それはあなたが何を意味するように思われる 大佐パニックこの質問で尋ねられた: Nuget Packages exclude version in folder naming、その答えはノーです。最後に、簡単に質問します。
大きなプロジェクトではどうやってナゲットを使うのですか?残念ながら、この質問に対する答えは非常に簡単です。あなたは(少なくとも効果的ではない)できません。 Nuget自身が blog postから1014年10月10日にこれを言っています。「有害な影響」セクションの下を読むと、実行中の問題の多くを見ることができます。
申し訳ありません、今すぐソリューションに。過去にNugetと同様の問題に遭遇しましたが、解決策は非常に簡単でした。時間を最小限に抑えるためにしなければならなかったのは、Visual Studioの.gitignore
を使ってコマンドラインからGitを使うことだけでした(Svnでもうまくいくと思います)。私たちは皆、これらの事例で働くためにナゲットに感謝するでしょう。しかし、そうではありません。すでにsvnを使用しているので、私は変更しないことを提案します。結局のところ、Nugetは実際にはソリューションベースで作業しているVisual Studiosの内部のマクロに過ぎません。
1
私の質問に対する答えはproject.jsonです。私はWPFでもすべてのプロジェクトでそれを使用できることに気づいていませんでした。 https://oren.codes/2016/02/08/project-json-all-the-things/
関連する問題
- 1. 外部ソースへのSvn事前コミット
- 2. svnからsvn-externalへの移行
- 3. SVNからHGへのマルチヘッドプロジェクトの移行
- 4. SVNからTFSへの移行2017
- 5. SVNからGitへの移行
- 6. NugetサーバーのTeamCity Nugetサーバーへの移行
- 7. svnをsvnで外部に移行する
- 8. SVNからGitへの移行。標準以外のSVNレイアウトをGitに移行する方法
- 9. LinuxからWindowsへのSVNサーバーの移行 - クライアントへの影響?
- 10. SVNからTFSに移行する(外部について何を行う)
- 11. SVNリポジトリとトランクタグとブランチのないSVNリポジトリからSVNリポジトリへの移行
- 12. Windowsからsvnからgit 2.9.2への移行
- 13. SVNからGITへの移行 - Mavenモジュール階層のメンテナンス方法
- 14. ClearCaseからSVNへの移行の進歩
- 15. GitからSVNに移行
- 16. ARからAR以外への移行
- 17. SVNからGITへの移動
- 18. 外部からフォームクラスメンバ関数へのアクセス
- 19. 外部からのsvnファイルの更新
- 20. Googleのコードからアセンブラ(SVN)への簡単な移行方法
- 21. VSSからSVNへの移行の管理
- 22. CVSからSVNへの移行とブランチ内での分岐
- 23. 実稼働環境のSVNからGitへの移行
- 24. Tortoise Gitを使用したSVNからGITへの移行
- 25. cvsからsvnへの移行を行うためのcvs2svnの代わり
- 26. svn repoから外部依存関係を削除
- 27. Git SVNと外部
- 28. 内部関数から外部スコープへの変数の調整
- 29. 初心者AWSコグニートの関心事
- 30. ClearcaseからSVNに移行するためのツールに関する推奨事項?
1。私はちょうど、ExcludeVersionが期待通りに動作しないことを知りました。 packages.configにパッケージを含めずにプロジェクトディレクトリにパッケージを追加します。 2.重要ではありません。 3.ビルドサーバーがパッケージをビルドしてパッケージ化するときに、パッケージをインストールするのではなく、バージョンを除外したかったのです。それは動作しないので重要ではありません。 4.私たちはsvnからgitに移行しようとしています。そのため、適切なパッケージ管理を使用したいのですが、これはナゲットです。私はナゲットを使用することは何年もの間存在していないとは信じられません...とにかく試してみて、何が起こるか見てみましょう。ありがとうございます。 – MistyK
私はWPFアプリケーションでproject.jsonを利用できることを知りました。それはお勧めですか? – MistyK