Mercurialを使用してsvn:externalsをエミュレートできますか?
-
03-07-2019 - |
質問
SVNからMercurialへの移行を検討しており、障害が発生しています。
現在、 svn:externals
を使用して、ライブラリの共通セットを作業ディレクトリに自動的にプルします。 Mercurialでこのようなサポートが見つかりません。
Mercurialでこれを自動的に行う方法はありますか、それともビルドプロセスの一部として偽造する必要がありますか?
解決
水銀のみを使用してそれを行う良い方法はありません。他の場所で言及されているForest Extensionは、現在修正されている問題をさらに引き起こします。ほとんどの人は大きなリポジトリを使用し、すべてのコンポーネントをリポジトリに含めてから、ビルドスクリプトをダウンロードしてサードパーティライブラリを使用します。Javaヘッドの場合はmavenを使用します。
「ビルドプロセスで偽造する」という短い回答。
更新:
Mercurial 1.3では、新しいサブリポジトリ機能が追加されました。古いフォレスト拡張機能に似ていますが、すべて新しいコードとして開始されました。
サブレポは、" 最後の手段の特徴"。
他のヒント
Forest Extensionの機能は、Mercurialのコアに実装されているようです(1.3以降):
https://www.mercurial-scm.org/wiki/Subrepository 。
現在「実験的」としてマークされています;しかし、おそらくv1.4の時点でsvn:external -type機能を処理するルートになるでしょう。
Deps Extension を試しましたか?
Mercurialの一部ではありませんが、 svn:externals
機能を模倣しているようです
Mercurialの Forest Extension を試してください。