2012-03-18 10 views
0

私は 'bootstrap.css'という以前のリビジョンのCSSファイルを持っていましたファイルを削除して再作成すると、別のリビジョンになる必要がありますか?

私はファイルを削除し、全く同じ名前のファイルを作り直しました。

変更をコミットすると、元のbootstrap.cssの削除が検出されました。しかし、新しいファイルの作成は検出されませんでした。私がコミットした直後に、新しいファイルが検出されました。

新しいファイルをリポジトリに取得する唯一の方法は、2つの別々のコミットを行うことでした。

私は間違っていましたか?それは設定の問題ですか?それとも、そのように動作するはずですか?あなたはbootstrap.css「古い」と「新しい」bootstrap.cssについて話すことはできませんので

答えて

0

Mercurialは、ファイルのアイデンティティを維持しない(私はTortoiseHgのを使用していた)

。 Mercurialには、同じファイル名で保存されたデータだけです。本当にMercurialの目に一つだけのファイルがありますので、 - あなたは

$ hg log bootstrap.css 

は、2つのファイルの履歴をインターリーブすることがわかります。

通常これはうまく動作し、期待通りに機能します。あなたは

$ hg remove bootstrap.css 
$ echo '/* new and improved */' > bootstrap.css 
$ hg add bootstrap.css 

(またはTortoiseHgのから相当)を実行することができ、結果はbootstrap.cssが変更されていることである:修正

$ hg status 
M bootstrap.css 

はちょうどそれが親リビジョンとは異なるということを意味します。

+0

これは私がいつも考えていたものですが、私が何をしても、私がTortoiseでコミットしようとしたときにどうして説明しますか?私のbootstrap.cssは '!'そのファイル構造の中にbootstrap.cssという名前のファイルがあったとしても、その隣に? –

+0

'hg add bootstrap.css'と等価ではなく、' hg remove bootstrap.css'をtortoisehgで実行したので、 –

関連する問題