8

ローカル ファイル システムの別の hg リポジトリ内に 1 つの hg リポジトリを配置できますか? 「サンドボックス」の bitbucket wiki をプルダウンしています。これをまたはに配置する必要があるかどうかを知りたいです。

別のリポジトリ内の 1 つのリポジトリのスクリーンショット

repos/sandbox/wikirepos/sandbox-wiki

前者でいいの?

編集:サブリポジトリを参照してください。

4

4 に答える 4

7

短い答えはイエスですが、なぜそうしたいのか想像できません。

あなたの例では、次のものを使用する必要があると思います:

repos/sandbox-wiki

[編集] 補足:

Yo Dowg, I herd you like repositories.

So we put a repo in your repo so you can version while you version

:-)

于 2010-05-20T13:19:10.893 に答える
5

はいといいえ。何をしたいかによります。リポジトリ「サンドボックス/wiki」を作成できますが、この内部リポジトリのファイルは外部「サンドボックス」リポジトリにコミットされません (@Jason は正しいです)。したくない場合は、問題ありません。

サンドックスで wiki リポジトリから明示的にファイルを追加してみると、以下のメッセージが表示されます。内部レポを含むディレクトリへのパスを追加すると、ファイルは無視されます。

サンドックス ルート ディレクトリから:

   hg add wiki/myfile
   abort: path 'wiki/myfile' is inside repo 'wiki'
于 2010-05-20T13:54:10.580 に答える
1

Mercurial はネストされたリポジトリを許可しませんが、少なくとも 1 つの理由があります:

/MyProject というプロジェクトで作業しているとします。このフォルダーには、コード、ドキュメント、テストなど、すべてを入れます。

非常に重要な作業であるため、作業をバックアップする必要があるため、/MyProject のリポジトリを作成します。その後、バンドルを使用して /MyProject の進化を保存し、それらを USB フラッシュ メモリにバックアップして、ハード ドライブが壊れた場合に備えてすべてを復元できるようにします。

/MyProject にはすべてが含まれていることに注意してください。その中には、メイン コードといくつかの補助プロジェクトがあります。/MyProject/AuxiliaryProject にある補助プロジェクトの進行状況も追跡したいので、Mercurial を使用してその進展を追跡します。

また、メイン コード用に別のリポジトリが必要です: /MyProject/Main

この状況では、ネストされたリポジトリが必要です。バンドルを使用してすべてをバックアップできる大きなリポジトリと、各サブプロジェクトを管理するための子リポジトリが必要です。

Mercurial は、リポジトリを初期化するときにユーザーにいくつかのオプションを提供する必要があると思います。例: - ネストされたリポジトリを無視する - ネストされたリポジトリを含めますが、.Hg フォルダーは無視します (つまり、ネストされたリポジトリが存在しないかのように動作しますが、ネストされたリポジトリに含まれる情報は無視しません)。- ネストされたリポジトリを含め、.Hg フォルダーも含めます (バックアップの目的に適しています)。

--------- 編集: サブリポジトリは進行中の機能です: https://www.mercurial-scm.org/wiki/subrepos

また、将来廃止される可能性のある「フォレスト」という名前の拡張機能もあります: https://www.mercurial-scm.org/ForestExtension

于 2010-06-28T12:07:11.440 に答える
-1

.hgignoreMercurial はすべての子孫に責任があると想定しているため、wiki を除外するにはサンドボックスにファイルを設定する必要があります。これは、価値がある以上にユーザーの混乱を招く可能性があります。

于 2010-05-20T13:21:54.390 に答える