mercurialのmerge関連

一応まとめておいたほうが良いかも?ということで OSの課題の奴です.参考になるかはわかりませんが.

mercurialでpull requestをするにはBitbucketとかgithubが自動でやってくれていた所を自分でどうにかしないといけない. それは何かと言えば,リモートのリポジトリの権限を振ってあげないといけない.

mercurialの場合,pushしたリポジトリからcloneしてpull request(push)する際に対象となるのはリモートのリポジトリgithub使ってるときは$git push origin master (だっけ)する対象だよね.

ただ自分が作っただけだとパーミッションが755.つまり自分だけしかなにも出来ない状態になっている. なので他の人がpushしようとしてもロックがかかってしまう訳.

じゃぁどうするかと言うと権限を変えれば良い. グループ内だけ出来るようにすれば良いので775で良いと思うのだけど,777にしとくのがベター? それと再帰的にするので -Rを忘れずに

$chmod 775 -R .hg

すればおそらく出来る筈.mergeは調べれば出てくる気がするけど

$ hg merge other-branch

あたりすれば良いかなぁ. 終わったらパーミッション戻しとこう

$chmod 755 -R .hg

閲覧サービスのgrafでmergeされてればokかな.たぶん


2016/12/01(追記)

mergeする際にconflictが起こった場合,OSXの場合はXcodeのFileMergeがデフォルトで起動するらしい. hgrcにmergeの記述を書いといたほうがエディタで書けるので便利