0

現在、hg stat を実行するとR、実際に存在することを確認したファイルの横に大きな赤が表示されます。

私はここにたどり着きました: hg rename を使用し、名前を変更する前のリビジョンに戻そうとし (ちなみに、これは機能しませんでした)、.orig を元のファイル名にコピーします。

しかし今、私はまだ大きなR. ファイルを呼び出しhg revertてから.origをコピーすることでこれを処理できますが、そもそもなぜこれが起こっているのですか? それは他の状況で起こり得るでしょうか?

4

1 に答える 1

1

あなたがファイルを持っていて、あなたが持っているfoo.txtとしましょう

$ hg rename foo.txt bar.txt
$ hg status
A bar.txt
R foo.txt

foo.txtは削除済み ( R) としてマークされ、新しいファイルbar.txtは追加済み ( A) としてマークされます。元に戻そうとしました。しかし、あなたが言ったように、何らかの理由で失敗しました:

名前を変更する前のリビジョンに戻そうとしています (ちなみに、これはうまくいきませんでした)

だから何も変わっていません。これfoo.txtはまだ削除済みとしてマークされておりbar.txt、追加済みとしてマークされています。

ファイルを手動で元に戻しても問題ありませんfoo.txt

$ mv bar.txt foo.txt
$ hg status
R foo.txt
! bar.txt

bar.txt名前を変更して追加したファイルが見つからないと言うだけです。

Mercurial はユーザーのアクションを記録し、追加および削除されたファイルを追跡します。ファイルを手動で追加および削除しても役に立ちません。foo.txtこれを修正するには、mercurial に を再度追加してを削除するように指示する必要がありますbar.txt

$ hg add foo.txt
$ hg status
! bar.txt
$ hg remove bar.txt
$ hg status
$
于 2013-08-23T07:25:09.183 に答える