【分散型バージョン管理】 Mercurial 2【hg】

2011/11/12(土) 23:55:48.78
分散型バージョン管理システムMercurialについてのあれこれ

前スレ
【分散型バージョン管理】 Mercurial 【hg】
http://hibari.2ch.net/test/read.cgi/tech/1251208950/l50

公式
http://mercurial.selenic.com/wiki/

日本語チュートリアル
http://mercurial.selenic.com/wiki/JapaneseTutorial

Mercurial - Wikipedia
http://ja.wikipedia.org/wiki/Mercurial

Mercurialではじめる分散構成管理
http://gihyo.jp/dev/feature/01/mercurial/0001

TortoiseHG
http://tortoisehg.bitbucket.org/
2012/01/22(日) 23:40:57.57
板更新後sage入力忘れました、すみません。
2012/01/23(月) 00:15:59.76
ソースをとってきた後の問題はMercurial関係ないだろ
2012/01/23(月) 02:13:52.19
VirtualBoxにUbuntuでもいれて
linuxでやったら?
2012/01/23(月) 12:05:13.86
レスどうもです。

>>78
やっぱりそうですかorz
ちょっと使ってみてそんな気配を感じてました。

>>79
それで頑張ってみたいと思います。

ありがとうございました。
2012/01/24(火) 14:36:24.22
>>73
gitはどうも使いにくい……というか、egitの出来が問題なのかも知れないが
試験的に導入してみたところコンフリクト時に先祖返りさせてしまう事故が
しょっちゅう起きちゃって多人数で使うのは熟練が必要ってことで
今は使うの見合わせている……
Subversionから離れられない。
Mercurialがマルチバイト文字対応になったらそっちの方がよさそうかなぁって雰囲気。
2012/01/24(火) 15:20:39.76
>>81
> Mercurialがマルチバイト文字対応になったらそっちの方がよさそうかなぁって雰囲気。

FAQだけど、ここが更新されたのでリンク
http://www.lares.dti.ne.jp/~foozy/fujiguruma/scm/mercurial-encoding.html

git、hgとも「マルチバイト文字対応」はしている。

2012/01/24(火) 22:55:54.71
そんなバッドノウハウだらけの状態で無理して対応なんて言わなくていいよ。
もうすぐUnicode対応来るんだからゆっくり待とうぜ
2012/01/27(金) 11:49:18.65
ゆっくりしていってね!
2012/01/28(土) 11:35:43.77
>>75
2.1RCが出ているみたいだけど
http://mercurial.selenic.com/wiki/WhatsNew

ラージファイル関係がかなり変わるのかな?
使った香具師いる?
86デフォルトの名無しさん
垢版 |
2012/02/02(木) 01:20:47.17
>>85
(´・ω・`)ノ
2012/02/02(木) 16:27:50.01
mercurial-2.1.tar.gz
2012/02/10(金) 12:14:14.06
TortoiseHg 2.2.2 (with Mercurial 2.0.2) でファイルをaddすると、
たまに、ファイル名が全部大文字に変換されてしまう事がある。

発生条件不明だが、revertしてやり直すとならなかったり。
みなさんはどないですか?
2012/02/10(金) 13:16:54.97
subversionからの移行を考えています。
subversionで「ベンダーブランチ」の追跡で使っている
svn_load_dirsみたいな付加プログラムはhgがよきに計らってくれるので
不要という事でしょうか?

↓ここを参照しました。
http://www.bonsaierp.com.au/blog/vendor-branches-mercurial-part-2
2012/02/15(水) 14:54:16.49
TortoiseHg 2.3 (with Mercurial 2.1) released
2012/02/15(水) 19:48:52.94
今月は遅かったな、なんかトラブルか?
2012/02/15(水) 19:54:41.13
>>91
phase対応
2012/02/15(水) 20:41:23.38
>92
何それ?
2012/02/15(水) 20:52:55.28
今回もgraft対応は見送りか・・・
2012/02/15(水) 22:25:27.44
なんか複雑になってきたしそろそろ最新バージョン対応の本が欲しい
2012/02/16(木) 04:37:23.80
>90
デジタル署名ついてねーな
2012/02/16(木) 17:50:22.94
>>88
https://bitbucket.org/tortoisehg/thg/issue/1543/tortoisehg-renames-files-with-all-caps
2012/02/16(木) 20:12:09.06
パーミッションの実行可能ビットの変更を無視したいんだが良い方法は無いのかね…
いちいち変更扱いされたりhgsubversion使ってるとsvn:excutableが付いちゃったりで非常に煩わしい
ググるとpre-commitフックとかで実行可能ビットを落とす方法が出てくるけど、そうじゃなくて無視したいんだよなぁ
2012/02/24(金) 14:18:10.09
Mercurial vs Git: Why Mercurial?
http://blogs.atlassian.com/2012/02/mercurial-vs-git-why-mercurial/
2012/03/04(日) 19:38:38.80
mercurial-2.1.1.tar.gz 01-Mar-2012
2012/03/08(木) 23:49:32.08
phaseっていつからできたっけ?
2012/03/09(金) 08:39:38.37
>>101
http://mercurial.selenic.com/wiki/Phases
>Phases are introduced in Mercurial 2.1.
2012/03/14(水) 18:52:17.15
Gitに挫折したんですがMercurialは簡単でしょうか?
2012/03/14(水) 20:46:16.72
>>103
簡単です
難しいと思っても、我慢して使い続けてみればきっと超簡単になります
2012/03/14(水) 21:11:38.27
簡単なことをするだけなら簡単
Gitもきっとそうだと思うけど
2012/03/14(水) 22:52:25.16
>>103
Gitの何に挫折したかによるんでは
2012/03/14(水) 23:15:54.80
簡単ですかね
試してみるか考えてます
git init
git add .
git commit -m "test"
git checkout .
git clone http〜
の5つは覚えられるんですがそれ以外のことがちんぷんかんぷんで難しいです
ブランチっていうのは何をするのかよくわかりませんし、
2012/03/14(水) 23:24:34.82
チンチンブラブラ
2012/03/14(水) 23:31:49.38
>>103
個人的にはMercurialのほうが簡単。

rollbackが1回しかできない > MQでかいけつ
サブディレクトリのチェックアウト > 自分には必要ない or サブディレクトリでhg init
ブランチを明示的に作る意味があまりない

という点だけかな。

gitはbranchやcommitが柔軟なのはいいが
Mercurial先に覚えた自分には
考え方が違いすぎて覚えるのに苦労した。
2012/03/14(水) 23:35:34.35
まじすか
やっぱ1年後にはgithubが使えるようになりたいというのもありますけど
Mercurialから始めたいと思います
2012/03/15(木) 00:30:35.55
>>110
Mercurial使うならbitbucket使ったら?
2012/03/15(木) 01:31:35.10
何よりもMercurialはTortoiseHgが便利じゃないか
俺は実用したことないけど
2012/03/15(木) 19:37:42.25
TortoiseHgはログのツリー表示と、複数の手動削除したファイルを
デリートするのに使っているなぁ
まとめてrevertする方法側かわからないのです
2012/03/16(金) 22:08:14.35
hg-git で Git リポジトリに変換するときに、コミッタごとのメールアドレスを指定するのは
どうすればいいんでしょうか。

https://github.com/schacon/hg-git に書いてある方法で
.hg/hgrc の [git] の下に authors = /path/to/authors.txt を書いて、
authors.txt には foo = foo <foo@foo.com> というのを書いているのですが
GitHub に push してみたところメールアドレスが全く設定されませんでした。

hg-git は easy_install で入れた 0.3.2 です。
2012/03/19(月) 19:38:47.52
hg しか使っていない友人に git と比べて何がいいか聞いたら MQ とのこと。
ググった感じだと git で branch と rebase でやれば同じことができるように思えるんだが、
実際のところどうなんだい?
あと hg でできて git でできないことがあれば教えてくれ。
2012/03/19(月) 20:21:22.82
>>115
やろうと思えば出来ないことってあまりないと思うよ。
どっちかの新機能はもう一方にも取り入れられていくだろうし。

俺はWindows対応や日本語ヘルプの充実があるのでMercurial
使い始めたよ。VCSを使ったことないような人に利用を
お願いするときにはこのあたりが問題なりそうな気がしたから。
2012/03/19(月) 23:38:47.59
>>115
そう、MQは便利なんだよ。Gitにもguiltがあるけど。

> あと hg でできて git でできないことがあれば教えてくれ。
バックアップ代わりの1個のリポジトリを作って、何でもpush -fで
そこに押し込むというのを、MQで間違えた時などのためによくやってるんだけど、
gitだといちいちブランチ名をつけなきゃいけなくて面倒かも。
2012/03/20(火) 17:37:45.95
無名ブランチはgitにない。
2012/03/21(水) 02:47:40.60
git で pull してコンフリクトが起きたときに、ファイルに
<<<< みたいなのが勝手に書き加えられるのが嫌だね。
しかも LF 固定なんで Windows では悲惨なことになる。
hg だと heads が増えるだけだからね。

ブランチ回りは hg と git は違いすぎて比較ができないね。

あと本質的ではないのかもしれないけれど git はオプションが
やたら複雑なのと(alias 漬けにすればなんとかなる?)、リビジョ
ンやブランチの指定方法に気が狂いそうになるのと、あと
hg serve がない(git daemon でできる、って書いてあるのを見て
やってみたけど、自分のところではうまくいかなかった) のと、
あと hg のほうがプラグインの仕組みがよくできていることかな。
2012/03/21(水) 09:02:51.20
>>119
hgのpullはgitで言うとfetch相当だよ。
gitのpullはhgで言うとpullの後updateとかmergeとか。
ブランチ回りは
hg:取り込まれているすべてのコミットのIDが連番と対応づけられていて、
枝分かれしてマージ前のコミットや親子関係のないコミットもすべて参照できる
git:コミットを参照するにはIDしかなく、「ブランチ」が指す最新のコミットから
parentをたどっていくことで各「ブランチ」のすべてのコミットを参照する
っていう違いが影響してるよね。gitの「ブランチ」って呼び名はどうかと思うけど。
2012/03/25(日) 17:57:54.32
今時クロスプラットフォームで動かない
カスバージョン管理システムは滅んでくれ
存在するだけで有害だ
2012/03/25(日) 21:46:09.33
有害なら勝手に消えて行くさ
2012/03/28(水) 23:12:47.58
うちの会社をSVNからMercurialに移行させようと頑張ってるんだが、
あと一歩の所で部長にStatSVNみたいのが無いから移行できないって言われた(´;ω;`)
たいして活用できてないのに・・・。
2012/03/31(土) 12:47:29.79
>>123
hg activity
hg chart
hg churn
などがあるようだ。
statsvnはxmlを食わせればいいみたいだから
hg logをその形式で出せばいいだけかも。
2012/04/02(月) 19:10:47.67
その部長。statsvn を解決したら別の問題を出してきそう
126123
垢版 |
2012/04/03(火) 23:30:16.09
そうかもね・・・・。
今回の機会は逃したけど、数か月後にまた移行の機会が来るからその時までに味方を増やしておこう。
2012/04/04(水) 06:14:43.48
会社だとビルドシステムやテストシステム・BTS はもちろん、
スケジュール調整や、場合によっては人事考課にまで影響が及ぶから
慎重になるのは当然。
2012/04/07(土) 00:26:13.20
今更だけど

2012-04-01 Mercurial 2.1.2 released!
2012/04/23(月) 23:45:44.85
TortoiseHg 2.3.2 released!
2012/04/24(火) 00:55:38.66
2012/04/24(火) 09:13:23.46
2012/04/30(月) 14:49:59.06
Mercurial 2.2 は明日リリース予定かな
2012/05/01(火) 12:43:37.90
2.2からamendできるようになったんだ。地味に嬉しいわー
2012/05/01(火) 20:29:50.48
>>133
amendってどういうときに使うの?
2012/05/01(火) 21:08:20.13
>>134
直前のコミットを修正したい時に使う。
何かしらの変更をコミットしたが、他にも同時にコミットしなきゃいけない変更を入れ忘れてた時とかに hg commit --amend ってやると、その入れ忘れてた変更を直前のコミットに合成できる。
2012/05/01(火) 23:21:36.12
>>135
なるほど、便利かも。
2012/05/02(水) 07:58:46.69
2012-02-01 Mercurial 2.2 released!
2012/05/02(水) 08:01:54.76
>>135
hg rollback
hg add
hg commit
の代わり?地味だなー
2012/05/02(水) 08:02:56.74
あれ、公式の日付間違ってる…
2012-05-01 Mercurial 2.2 released!
2012/05/02(水) 23:44:58.66
hgってディスクフォーマット的には歴史改変禁止の方向だとおもうけど、
けっこういろいろできちゃうな。
2012/05/03(木) 09:16:46.34
>>140
基本的なコンセプトとして容易に履歴をぶっ壊したりできないようにってのはあるんだろうけど、実際できる(ようにしてある)かどうかはまた別の話なのでは。MQもあるわけだし。
2012/05/04(金) 00:01:30.68
正直その辺はやり方次第なんで
できるなら最初から出来るようにしておいて欲しかった
2012/05/04(金) 02:01:54.27
>>142
一応hg clone -rは昔からある
2012/05/04(金) 12:02:12.34
Mercurial 2.2.1 released!
145デフォルトの名無しさん
垢版 |
2012/05/05(土) 16:57:11.37
TortoiseHg 2.4 released!
2012/05/06(日) 15:01:26.70
>>139
>>144
速攻で、2.2.1 が出ているけど、なんか重大トラブルあったんか?
2012/05/06(日) 15:36:29.43
>>146
hg serve でメモリリークらしいよ
2012/05/11(金) 19:13:55.60
hgwebで日本語コメントが文字化けするのって直ってなかったのか…
149デフォルトの名無しさん
垢版 |
2012/05/12(土) 17:40:15.34
custom toolbarってどうやってアイコンとか登録するんだろ?
使ってる人いる?
2012/05/28(月) 00:45:30.03
svn ls dir
と同じことってどうやったら出来ますでしょうか?
2012/05/28(月) 06:28:40.49
>>150
hg locate dir/*
2012/05/28(月) 06:30:25.48
hg locate -r tip 'dir/*'
2012/05/28(月) 08:02:28.04
hg locate dir/* --include .
とすることで目的の、
svn ls .
と等価なことが出来るようになりました。
ありがとうございました。
2012/05/28(月) 08:03:43.20
svn ls dir
と等価なことが出来るようになりました。
が正しかったです。。。
てへへw
2012/06/02(土) 15:20:54.31
mercurial-2.2.2
156デフォルトの名無しさん
垢版 |
2012/06/07(木) 05:29:10.77
mercurialがプライベートなリポジトリをもてることはわかった。
このプライベートなリポジトリをリモートにおくことはできないのかい?
おいらはいろんな端末で作業するからリポジトリをローカルにおきたくないんだ。
こんな使い方にmercurialは向かない?
2012/06/07(木) 07:07:41.97
つbitbucket
2012/06/09(土) 03:48:21.35
つNFS
159デフォルトの名無しさん
垢版 |
2012/06/09(土) 12:56:03.41
>>156
なんかよくわからんが、
doropbox とか samba とかか、
subversion とか bazaar とかじゃね?

そもそも「プライベート」って何よ?
DVCS 関連でそんなキーワード見たことないんだけど・・・
2012/06/09(土) 14:54:15.46
>>159
dropboxもsambaもsubversionもbazaarも関係ない。
>>157で終わってるから、もう誰も答える必要ないよ。
2012/06/09(土) 16:00:54.79
外しっぷりが酷い。
162デフォルトの名無しさん
垢版 |
2012/06/09(土) 16:10:13.09
>>160
そうなの?

「ローカルにリポジトリおきたくない」
=「commit したらリモートのリポジトリが更新される」
なのかと思ったよ

push し忘れることってまれによくあるよね
2012/06/09(土) 16:54:00.00
TortoiseHg 2.4.1 (with Mercurial 2.2.2) released
2012/06/09(土) 17:03:58.11
念願のgraft対応GUI来たか。これでGitに勝てるっ
2012/06/09(土) 21:06:01.58
>>162
まれによくあるってどっちだアホ。
svn か bzr でも使っとけ。
2012/06/09(土) 22:41:02.11
www
2012/06/10(日) 02:43:15.65
>162
[hooks] のところになんか書けばいいんじゃないの?
168デフォルトの名無しさん
垢版 |
2012/06/12(火) 22:30:55.96
>>159
http://mercurial.selenic.com/wiki/JapaneseUnderstandingMercurial
ここでプライベートって言葉が出てきてるが
mercurialは一般的なDVCSとは異なるのってことか
2012/06/13(水) 10:04:17.82
バンドルファイルのコミットメッセージや差分を表示する方法ってあるんでしょうか?
やりたいことはstripとかして溜まったバックアップを確認して要らないものは消したいです。
2012/06/13(水) 11:56:21.31
>>169
hg incoming -p バンドルファイル
171169
垢版 |
2012/06/13(水) 16:15:09.84
>>170 おっ、ありがとう。
172名無しさん@お腹いっぱい
垢版 |
2012/06/13(水) 19:15:47.19
>>168
この文脈でのプライベートなら、
一般的な DVCS には存在する概念だと思うよ。
2012/06/13(水) 23:50:21.94
>>170
これがいけるってことは
hg pull バンドルファイル
もOKで、つまりhg unbundleは必要ないってこと?
2012/07/02(月) 23:03:15.64
mercurial-2.2.3
2012/07/08(日) 00:14:57.24
いまさらだけど
2012-07-02: TortoiseHg 2.4.2 (with Mercurial 2.2.3) released
2012/07/13(金) 13:26:26.61
そんなに直すとこあんの?
2012/07/21(土) 01:54:20.45
cvsからMercurialに変換しようとして cvsリポジトリをチェックアウトしようとしたが
wincvsよく分からない
もう亞北ネル
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況