Mercurialめも

自分用メモ。cloneしたリポジトリ自身がブランチ、というやりかたは ちょっと油断するとディレクトリが散乱して収拾付かなくなるのでやだ、って ときに、サーバ上にリポジトリ1本、1個の作業ディレクトリで 論理的なブランチを回す方法。

hg clone ssh://server/repos/project workingcopy
cd workingcopy
vi file
hg ci -m hogehoge file
  :
  :
(いろいろ作業して公開版1.0を)
hg tag 1.0-release
hg push
(新しいブランチを切る)
hg branch branch-for-1.1
hg hg ci -m "New branch branch-for-1.1 created"
(いろいろ作業してはコミットをくり返す)
hg ci -m blah..blah..blah..
hg push
(さあ1.0-release準備完了。デフォルトブランチに戻る)
hg up -r default
(branch-for-1.1ブランチの更新を取り込む)
hg merge -r branch-for-1.1
(1.1-release用にいくつかファイルを修正して1.1-releaseとしてリリース!)
vi RELNOTES ...
hg ci -m 'Update relnote for 1.1 Release'
(念のためタグ打ち)
hg tag 1.1-release
hg push
(さあ、じゃあ1.2-releaseにむけてまた作業開始だ)
hg branch branch-for-1.2
 :
以下続く
 :

ローカルリポジトリのみでやる場合はpush/pullはもちろん不要。

この進み方の場合、ブランチからのメインへのマージをして、 メインの方で何かコミットをしたら、ブランチは独自で進むことはできず、 進みたいなら一度ブランチにメインの修正を取り込み直さないといけない。


叱咤激励感想ツッコミはゲストブック

Generated with mkdiary.rb
yuuji@example.org
Fingerprint16 = FF F9 FF CC E0 FE 5C F7 19 97 28 24 EC 5D 39 BA
HIROSE Yuuji - ASTROLOGY / BIKE / EPO / GUEST BOOK / YaTeX [Tweet]