ある水銀リポジトリは別の水銀リポジトリ内に住むことができますか?

StackOverflow https://stackoverflow.com/questions/2874015

質問

1つのHGリポジトリは、ローカルファイルシステムの別のHGリポジトリ内にライブできますか?

screenshot of one repo inside another

私は「サンドボックス」のためにBitbucket wikiを引き下げています、そして、私はこれをに置くべきかどうか知りたいです repos/sandbox/wiki また repos/sandbox-wiki.

前者は大丈夫ですか?

編集:参照 Subrepository.

役に立ちましたか?

解決

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

SandoxのWiki Reposからファイルを明示的に追加してみてください。以下にメッセージが表示されます。内側のレポを含むいくつかのディレクトリにパスを追加するだけで、ファイルは無視されます。

Sandox Root Directoyから:

   hg add wiki/myfile
   abort: path 'wiki/myfile' is inside repo 'wiki'

他のヒント

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

あなたの例では、私はあなたが一緒に行くべきだと思います:

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

:-)

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

あなたがプロジェクトで働いていると想像してください: /myproject。このフォルダーには、コード、ドキュメント、テストなどをすべて配置します。

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

/myprojectにはすべてが含まれていることを忘れないでください。そして、それらすべての中には、主要なコードといくつかの補助プロジェクトがあります。また、 /myproject /auxiliaryprojectの補助プロジェクトの進捗状況を追跡するため、Mercurialを使用してその進化を追跡します。

また、メインコードのための個別のリポジトリが必要です: /myproject /main

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

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

--------編集:Subrepositoriesは進行中の機能です。https://www.mercurial-scm.org/wiki/subrepos

また、将来的に時代遅れになるかもしれない「森」という名前の拡張機能があります。https://www.mercurial-scm.org/forestextension

セットアップする必要があります .hgignore Mercurialはすべての子孫に責任があると想定しているため、Wikiを除外するサンドボックスにファイルします。 これは、おそらく価値よりも多くのユーザーの混乱を生み出すでしょう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top