Developers         Developers Summit 2013 Action !
Summit




             Mercurial in Japan


                      藤原 克則
                 FUJIWARA Katsunori
                     @flyingfoozy



                      mercurial-users.jp
Developers   Developers Summit 2013 Action !
Summit




  日本におけるMercurialコミュニティの状況




                mercurial-users.jp
Developers    Developers Summit 2013 Action !
Summit




             ですが、その前に…




                 mercurial-users.jp
Developers     Developers Summit 2013 Action !
Summit




         『Mercurial』について簡単に紹介を




                  mercurial-users.jp
Developers                Developers Summit 2013 Action !
 Summit


                     Mercurialとは?
• 分散リポジトリ型の履歴管理ツール
  http://mercurial.selenic.com/

• コマンド名は “hg”
   – “Mercurial” の名前の由来である『水銀』(mercury)の元素記号

• Pythonをはじめとする各種OSSの履歴管理で採用
   – 『A list of projects using Mercurial』
      http://mercurial.selenic.com/wiki/ProjectsUsingMercurial


                              mercurial-users.jp
Developers   Developers Summit 2013 Action !
Summit




『履歴管理ツールはGit』的な風潮があるが…




                mercurial-users.jp
Developers        Developers Summit 2013 Action !
 Summit


              Mercurialは利用が簡単
• 管理モデルが簡単/安全
   – ローカルで記録した全ての履歴が、常時参照可能
        • 『ポインタの移動に伴い、履歴が見えなくなる』といったことがない

   – 基本機能の範囲では、履歴記録の追加のみ可能
        • 不慣れな利用者による履歴破壊の心配がない


• UIが簡単
   – コマンド/オプションが、体系立てて整理されている

   – メッセージ/ヘルプが、ほぼ100%日本語翻訳済み


                      mercurial-users.jp
Developers   Developers Summit 2013 Action !
Summit




 『Gitで言う~機能が無い』的な声もあるが…




                mercurial-users.jp
Developers         Developers Summit 2013 Action !
Summit


『エクステンション』による機能拡張
• 『Gitで言う~機能』の多くは、『エクステンション』とし
 て提供されている

• 基本機能から分離するメリット
  – 基本機能を絞ることで、導入障壁が下がる
       • 導入時に覚えるべき概念/機能/オプション等が少ない

  – 不慣れな利用者による、誤用を防止
       • 明示的に有効化しない限り、履歴改変系の危険な機能は無効

       • Gitを併用しているような人は、各種エクステンションを有効化してください!


                      mercurial-users.jp
Developers     Developers Summit 2013 Action !
Summit


  標準同梱の『エクステンション』
• 履歴改変系の機能拡張
  – rebase: 履歴の枝分かれ部分の移動

  – MQ: 『パッチキュー操作』と言う名の、高機能履歴改変ツール

  – histedit: リビジョンの統合/入れ替え/除外等々

  – transplant: 履歴の移植(別リポジトリからの直接移植も可能)




                  mercurial-users.jp
Developers          Developers Summit 2013 Action !
Summit


  標準同梱の『エクステンション』
• CUI利用時に便利な機能
  – color: 出力の色付け

  – progress: 進捗状況(プログレスバー)表示

  – pager: 出力のページ繰り

  – record: ハンク(hunk)単位でのコミット対象選択




                       mercurial-users.jp
Developers      Developers Summit 2013 Action !
Summit


  標準同梱の『エクステンション』
• 挙動拡張系
  – eol: 改行コードの取り扱いの管理

  – schemes: 連携先URL指定方式の拡張

  – keyword: CVS的なキーワード展開

  – largefiles: 差分を記録しない履歴管理の導入(バイナリファイル向け)




                   mercurial-users.jp
Developers   Developers Summit 2013 Action !
Summit




    『コマンドライン操作は面倒』と言う人も…




                mercurial-users.jp
Developers         Developers Summit 2013 Action !
Summit


      TortoiseHgならGUIで簡単!
• Windowsや、MacOSを含むUnix系環境で利用可能
 http://tortoisehg.bitbucket.org/




                      mercurial-users.jp
Developers                   Developers Summit 2013 Action !
Summit

 TortoiseHgを使った履歴管理の入門書が!

• 『入門TortoiseHg + Mercurial』と題して、
 秀和システムより、2月26日出版予定
   – 発売日は変更になる可能性があります

   – 全国一斉発売ではありません

   – ネット書店の在庫が安定するまでに時間がかかることがあります。

• 詳細は以下のページで!
   – http://www.lares.dti.ne.jp/~foozy/fujiguruma/scm/mercurial-books.html#thgbook




                                mercurial-users.jp
Developers               Developers Summit 2013 Action !
 Summit


       各種IDE向けプラグイン等も
• 詳細は Mercurial の Wiki ページで
   – 『Information about other tools that work with Mercurial. 』
      http://mercurial.selenic.com/wiki/OtherTools




                             mercurial-users.jp
Developers     Developers Summit 2013 Action !
Summit




         日本におけるMercurialコミュニティ




                  mercurial-users.jp
Developers             Developers Summit 2013 Action !
 Summit


                  メーリングリスト
• mercurial-ja(Google Group):
   – https://groups.google.com/forum/?fromgroups#!forum/mercurial-ja

   – リリース情報/障害情報等もアナウンスしてます




                           mercurial-users.jp
Developers      Developers Summit 2013 Action !
 Summit


                    Twitter
• @mercurialjp
  ユーザグループの公式アカウント

• #mercurialjp
  ユーザグループの公式コミュニティハッシュタグ




                    mercurial-users.jp
Developers         Developers Summit 2013 Action !
 Summit


        ユーザグループ公式サイト
• http://mercurial-users.jp/
   – イベント開催/参加情報
        • 勉強会の開催

        • 各種イベントでの出張ハンズオンなど

   – 最新版の日本語オンラインマニュアル

   – 各種情報へのリンク
        • メーリングリストへのリンクもあります




                       mercurial-users.jp
Developers               Developers Summit 2013 Action !
 Summit


    つぶやきも立派な貢献です!
• Twitter上の発言等に由来する、Mercurial本体に取
  り込まれた修正が、 2012年の一年間で10件以上
   – 『Mercurial に関するコミュニティ由来の成果(2012年版)』
      http://d.hatena.ne.jp/flying-foozy/20130109

• 疑問/要望等あれば、どんどんお寄せください




                             mercurial-users.jp
Developers          Developers Summit 2013 Action !
Summit




             履歴管理しようぜ!(できればMercurialで)




                       mercurial-users.jp
Developers     Developers Summit 2013 Action !
Summit




             ありがとうございました




                  mercurial-users.jp

mercurial-users.jp LT at DevSumi 2013 Tokyo

  • 1.
    Developers Developers Summit 2013 Action ! Summit Mercurial in Japan 藤原 克則 FUJIWARA Katsunori @flyingfoozy mercurial-users.jp
  • 2.
    Developers Developers Summit 2013 Action ! Summit 日本におけるMercurialコミュニティの状況 mercurial-users.jp
  • 3.
    Developers Developers Summit 2013 Action ! Summit ですが、その前に… mercurial-users.jp
  • 4.
    Developers Developers Summit 2013 Action ! Summit 『Mercurial』について簡単に紹介を mercurial-users.jp
  • 5.
    Developers Developers Summit 2013 Action ! Summit Mercurialとは? • 分散リポジトリ型の履歴管理ツール http://mercurial.selenic.com/ • コマンド名は “hg” – “Mercurial” の名前の由来である『水銀』(mercury)の元素記号 • Pythonをはじめとする各種OSSの履歴管理で採用 – 『A list of projects using Mercurial』 http://mercurial.selenic.com/wiki/ProjectsUsingMercurial mercurial-users.jp
  • 6.
    Developers Developers Summit 2013 Action ! Summit 『履歴管理ツールはGit』的な風潮があるが… mercurial-users.jp
  • 7.
    Developers Developers Summit 2013 Action ! Summit Mercurialは利用が簡単 • 管理モデルが簡単/安全 – ローカルで記録した全ての履歴が、常時参照可能 • 『ポインタの移動に伴い、履歴が見えなくなる』といったことがない – 基本機能の範囲では、履歴記録の追加のみ可能 • 不慣れな利用者による履歴破壊の心配がない • UIが簡単 – コマンド/オプションが、体系立てて整理されている – メッセージ/ヘルプが、ほぼ100%日本語翻訳済み mercurial-users.jp
  • 8.
    Developers Developers Summit 2013 Action ! Summit 『Gitで言う~機能が無い』的な声もあるが… mercurial-users.jp
  • 9.
    Developers Developers Summit 2013 Action ! Summit 『エクステンション』による機能拡張 • 『Gitで言う~機能』の多くは、『エクステンション』とし て提供されている • 基本機能から分離するメリット – 基本機能を絞ることで、導入障壁が下がる • 導入時に覚えるべき概念/機能/オプション等が少ない – 不慣れな利用者による、誤用を防止 • 明示的に有効化しない限り、履歴改変系の危険な機能は無効 • Gitを併用しているような人は、各種エクステンションを有効化してください! mercurial-users.jp
  • 10.
    Developers Developers Summit 2013 Action ! Summit 標準同梱の『エクステンション』 • 履歴改変系の機能拡張 – rebase: 履歴の枝分かれ部分の移動 – MQ: 『パッチキュー操作』と言う名の、高機能履歴改変ツール – histedit: リビジョンの統合/入れ替え/除外等々 – transplant: 履歴の移植(別リポジトリからの直接移植も可能) mercurial-users.jp
  • 11.
    Developers Developers Summit 2013 Action ! Summit 標準同梱の『エクステンション』 • CUI利用時に便利な機能 – color: 出力の色付け – progress: 進捗状況(プログレスバー)表示 – pager: 出力のページ繰り – record: ハンク(hunk)単位でのコミット対象選択 mercurial-users.jp
  • 12.
    Developers Developers Summit 2013 Action ! Summit 標準同梱の『エクステンション』 • 挙動拡張系 – eol: 改行コードの取り扱いの管理 – schemes: 連携先URL指定方式の拡張 – keyword: CVS的なキーワード展開 – largefiles: 差分を記録しない履歴管理の導入(バイナリファイル向け) mercurial-users.jp
  • 13.
    Developers Developers Summit 2013 Action ! Summit 『コマンドライン操作は面倒』と言う人も… mercurial-users.jp
  • 14.
    Developers Developers Summit 2013 Action ! Summit TortoiseHgならGUIで簡単! • Windowsや、MacOSを含むUnix系環境で利用可能 http://tortoisehg.bitbucket.org/ mercurial-users.jp
  • 15.
    Developers Developers Summit 2013 Action ! Summit TortoiseHgを使った履歴管理の入門書が! • 『入門TortoiseHg + Mercurial』と題して、 秀和システムより、2月26日出版予定 – 発売日は変更になる可能性があります – 全国一斉発売ではありません – ネット書店の在庫が安定するまでに時間がかかることがあります。 • 詳細は以下のページで! – http://www.lares.dti.ne.jp/~foozy/fujiguruma/scm/mercurial-books.html#thgbook mercurial-users.jp
  • 16.
    Developers Developers Summit 2013 Action ! Summit 各種IDE向けプラグイン等も • 詳細は Mercurial の Wiki ページで – 『Information about other tools that work with Mercurial. 』 http://mercurial.selenic.com/wiki/OtherTools mercurial-users.jp
  • 17.
    Developers Developers Summit 2013 Action ! Summit 日本におけるMercurialコミュニティ mercurial-users.jp
  • 18.
    Developers Developers Summit 2013 Action ! Summit メーリングリスト • mercurial-ja(Google Group): – https://groups.google.com/forum/?fromgroups#!forum/mercurial-ja – リリース情報/障害情報等もアナウンスしてます mercurial-users.jp
  • 19.
    Developers Developers Summit 2013 Action ! Summit Twitter • @mercurialjp ユーザグループの公式アカウント • #mercurialjp ユーザグループの公式コミュニティハッシュタグ mercurial-users.jp
  • 20.
    Developers Developers Summit 2013 Action ! Summit ユーザグループ公式サイト • http://mercurial-users.jp/ – イベント開催/参加情報 • 勉強会の開催 • 各種イベントでの出張ハンズオンなど – 最新版の日本語オンラインマニュアル – 各種情報へのリンク • メーリングリストへのリンクもあります mercurial-users.jp
  • 21.
    Developers Developers Summit 2013 Action ! Summit つぶやきも立派な貢献です! • Twitter上の発言等に由来する、Mercurial本体に取 り込まれた修正が、 2012年の一年間で10件以上 – 『Mercurial に関するコミュニティ由来の成果(2012年版)』 http://d.hatena.ne.jp/flying-foozy/20130109 • 疑問/要望等あれば、どんどんお寄せください mercurial-users.jp
  • 22.
    Developers Developers Summit 2013 Action ! Summit 履歴管理しようぜ!(できればMercurialで) mercurial-users.jp
  • 23.
    Developers Developers Summit 2013 Action ! Summit ありがとうございました mercurial-users.jp