はい、あなたはあなたが述べたことを行うことができますがhg clone
、メインリポジトリを簡単に実行すると、2つの間にリンクが存在することに注意してください。これは、あなたが望むものではないかもしれません. このリンクは、.hg/hgrc
ファイルを編集default = ...
してセクション内の項目を削除することで削除できます[paths]
。
より良い方法は、クローンを作成せずに行うことです。この方法では、リポジトリ間のリンクがありません。これは顧客に送信されるため、必要な場合があります。
基本的な方法は、変更セットなしで新しいリポジトリをセットアップし、次に 3 つの方法のいずれかですべての変更セットを取り込むことです。
- リポジトリから新しいリポジトリに変更をプッシュします。
- 古いリポジトリから新しいリポジトリに変更をプルします。
- 新しいリポジトリにアクセスできない場合は、顧客に提供できるバンドルを作成します。これは、バンドルを解除するか、空のリポジトリにプルすることができます。
プッシュとプルは通常どおりに行いますが、リポジトリの場所を指定します。
// create the empty repository
hg init .
// pull in everything from the old repo
hg pull /projects/myOriginalRepo
押したり…
// create the empty repository
hg init /projects/myNewRepo
cd /projects/myOriginalRepo
hg push /projects/myNewRepo
バンドルを DVD に書き込んで、素敵なグリーティング カードと一緒に弓で包んで顧客に渡すことができるので、バンドルを作成する方がおそらく良い方法です。
cd /projects/myOriginalRepo
hg bundle --all ../repo.bundle
すべてが 1 つのファイルに書き出されます。このファイルは、hg unbundle repo.bundle
またはhg pull repo.bundle
を使用して、既存の変更セットのないリポジトリに抽出できます。
ファイルに関してはhgrc
、別の回答で既に述べたように、それは制御されたファイルではないため、コピーされません。ただし、コンテンツは、自動ビルドを実行するためのフックや、変更セットを適用する前の検証などである可能性があります。これはおそらくあなた自身の組織にしか意味をなさないロジックであり、これを顧客に押し付けたくないことをお勧めします.結局のところ、彼らはあなたのコードベースの所有権を取得しており、独自のコードベースを持っている可能性があります.このようなことのために整備されたシステム。