3

Kiln にブランチを作成し、それを使用して というフォルダーで作業を行っていますcontactsmanager

ただし、計画を変更した後、変更をトランクにマージするのではなく、contactsmanager フォルダーの名前を単に連絡先に変更する必要があります。

Tortoise に、古い連絡先マネージャー フォルダーを、削除または名前変更ではなく、単純な、行方不明として処理してもらいたいです。

トランクからプルダウンして古い連絡先マネージャーを取得し、新しく (名前が変更された) 連絡先フォルダーと並べて配置し、正しく表示されたら、この構造をトランク (連絡先マネージャーと連絡先を並べて) にプッシュします。 )

問題は、スクリーンショットが示すように、TortoiseHG は古い連絡先マネージャー フォルダーが削除されていることを確認しているように見えることです。古い連絡先マネージャーのものをすべて強調表示し、右クリックして「忘れる」を選択しようとしましたが、役に立ちませんでした。

Tortoiseでこれを達成する方法はありますか? 回避策はかなり明確です。トランクに古いcontactsmanagerフォルダーのコピーを作成し、変更をプッシュして、トランクの名前を変更し、古いcontactsmanagerを手動で復元して、準備を整えます.

でも、直接的な方法があることを願っています。

ここに画像の説明を入力

4

1 に答える 1

3

Mercurial でのさまざまなファイル ステータス間の遷移について、いくつかの点を明確にすることができるかどうか見てみましょう。

  • クリーニング → 削除:hg removehg renameまたは でhg forget

  • 取り外し→きれい:ありhg revert

したがって、ファイルの名前変更、削除、忘れはすべて同じ結果になります。ファイルは次のコミットで削除されるようにスケジュールされています。もちろん、異なるコマンドは作業コピーで異なる効果を持ちます:

  • hg remove: ファイルは作業コピーから削除されます

  • hg rename: ファイルは削除されましたが、別の名前で見つかるようになりました

  • hg forget: ファイルはまだ作業コピーにあります

このhg forgetコマンドは、ファイルを生き返らせることは決してありません。それhg revertが目的です。

したがって、私があなたを正しく理解していれば、フォルダーhg revert全体contactsmanagerでファイルをクリーンな状態に戻す必要があります (これはおそらく、「トランクからプルダウンして古い連絡先マネージャーを取得したい」という意味です)。フォルダ内のファイルはcontactsMercurial には認識されないままです — 通常どおり追加できます。

これを行うと、 と のファイル間に「リンク」がなくなり、必要に応じcontactsmanagercontactsフォルダが並んで表示されます。リンクが見つからないということは、あるフォルダーで行われた変更を他のフォルダーにマージするように求められないことを意味します。これが必要な場合はhg copycontactsmanagerフォルダをcontents. コピーにより、 で行われた Mercurial マージの変更が に作成さcontactsmanagercontactsます。詳細については、私の回答hg copyを参照してください。

于 2012-07-10T12:11:34.443 に答える