2011-12-24 13 views
16

リリースタグ付きで古いバージョンのファイルにタグを付けるのを忘れていました。古いバージョンはr13、最新バージョンはr65です。新しいディレクトリに最新のリポジトリをクローンし、タグを付けたい古いコードを取得するために "hg update -r13"を実行してから、タグコマンドを実行しましたが、メッセージを受け取りました:Mercurial、古いバージョンのファイルにタグを付ける方法

中止: (強制的に-fを使用してください)

この場合、-fオプションを使用しても安全ですか?

答えて

19

あなたは特定のリビジョンに自分自身を更新することなく、リポジトリでタグ付けを行うことができますね。

13タグ名-r HGタグ

Mercurial wikiで詳細を参照してください。

私はそれをテストしてみました:

temp $ hg init . 
temp $ touch a.txt 
temp $ hg add a.txt 
temp $ hg commit -m "added a" 
temp $ hg status 
temp $ echo "sdwwdd" >> a.txt 
temp $ hg commit -m "modified a" 
temp $ echo "\neddwedd" >> a.txt 
temp $ hg commit -m "modified a again" 
temp $ hg log 
changeset: 2:ef40a402fdab 
tag:   tip 
user:  "xxxx" 
date:  Fri Dec 23 16:51:48 2011 -0800 
summary:  modified a again 

changeset: 1:d630dc3e2e3a 
user:  "xxxx" 
date:  Fri Dec 23 16:51:31 2011 -0800 
summary:  modified a 

changeset: 0:7c9917f24515 
user:  "xxxx" 
date:  Fri Dec 23 16:51:04 2011 -0800 
summary:  added a 

出力:

temp $ hg tag -r 1 a.txt a_1 
temp $ hg tags 
tip        3:e3157256098f 
a_1        1:d630dc3e2e3a 
a.txt        1:d630dc3e2e3a 
temp $ hg tag -r 1 all_1 
temp $ hg tags 
tip        4:a643971911d8 
all_1        1:d630dc3e2e3a 
a_1        1:d630dc3e2e3a 
a.txt        1:d630dc3e2e3a 
関連する問題