お家で使うVCSを選ぶ (mercurialにしました)
subversionは職場で使ってるんですが, 特にofflineでcommitしたくて分散にしようかと.
- PCが複数台
- offlineの場合が多い
- ソースいじるのは私だけ
- repositoryのversionころころ変わって追従できない
項目 | git | bazaar | mercurial |
---|---|---|---|
speed | 軽快 | 重い...(ぎりぎり | hpcmipsでも動く |
command | 覚えにくい... | 重くて試してない | まぁわかる |
keyword | 無理? | 重くて試してない | changesetで代用 |
こんな結果でmercurial決定.
しばらく使っていこう...
ここで考えたのがいままで
管理してたソースや運用方法の継承です.
管理の継承
これは簡単です.
$ easy_install hgsubversion $ hg clone file:///home/hoge/SVN/somesource
hgsubversionにも書いてますけど,
trunkとかは指定しない.
keyword
キーワード置換って分散SCMでは
気にされてないみたいです.
でもファイル内に書いてある方がわかりやすい
, と思っているのでやってみます::
$ vi ~/.hgrc ---- begin of file ---- [ui] username = hoge [extensions] keyword = [keyword] **.py = x*.pyc = [keywordmaps] Author = {author|user} Date: = {date|utcdate} Date = {date|utcdate} Id = {file|basename} {rev}:{node|short} {date|utcdate} {author|user} Rev = {rev}:{node|short} ---- end of file ---- $ hg kwdemo ...
ここでググってもあんまり出てこなかったのは
{rev}とDate:というところ.
- revはnode|shortのハッシュ値ではよくわからない ので changeset を出力します :D
- Date:はsubversionで $Date:$ としている場合に有効
自分が気にしたのは後は.hgignoreぐらいかなー
syntax: globとregexが
両方使えるっていうのが珍しいかと.
globってsudoersのmanにも書いてるんで 用語としては有名なんですかね.
今日はこのぐらいで.
コメント
Comments powered by Disqus