Mercurialのhgsubversion資料
@cointoss1973さんのMercurialのhgsubversion資料が公開されていたのでメモ。
SVNがmasterとして存在していて、クライアント側でMercurialを使う時にどのような点に注意すればよいか、とても詳しく分かりやすく書かれている。
git-svnでも同様の考え方を適用できるだろう。
以前、TorotiseHg+hgsubversionを試したけれど、まだ発展途上だった。
でも今は実用に耐えれるレベルになってきたようだ。
TortoiseHg2.03でhgsubversionが動くようになった: プログラマの思索
TortoiseHg+hgsubversionの導入方法: プログラマの思索
hgsubversionの使い道は、マスターリポジトリがSVNであり、SVNから移行できない場合にMercurialをクライアントのラッパーとして扱う時だろう。
Git使いがgit-svnを使う理由と同じだ。
クライアントで分散バージョン管理が使えるようになることで、バグ修正や機能追加のパッチをtrunkと同期させながらトピックブランチで試すことができる。
A successful Git branching model: プログラマの思索
git-flow による構成管理とRedmineの関係: プログラマの思索
但し、hgsubversionにはいくつかの指摘が上記で示されている。
一つは、コミット履歴に分岐が発生しないように直線的になるようにすること。
SVNは複数のheadを保持することは当然できないから。
だから、rebaseを使ってコミット履歴に挿入したり、transplantでコミット履歴のheadへマージしたりする。
もう一つは、ファイル名が日本語のファイルには対応していないこと。
以下のBlogによれば、fixutf8を使えば大丈夫らしい。
HgSubversionでMercurialとSubversionを連携させる - azuki note
分散バージョン管理には、チケット駆動開発以上にたくさんの可能性があると思う。
| 固定リンク
「廃止Mercurial」カテゴリの記事
- GitHubはオープンソースのプロセスを標準化した(2015.06.11)
- 「反復型ソフトウェア開発」はソフトウェア工学の良書(2013.02.09)
- Mercurialに取り込まれたコミュニティ由来の機能一覧(2013.01.12)
- WordやExcelから直接Mercurialへコミットできるアドオンmsofficehg(2012.12.07)
- RedmineでSubversion リポジトリ表示を高速化する方法(2012.11.23)
コメント