Más contenido relacionado
La actualidad más candente (20)
Similar a 分散バージョン管理システムって何なん 20101218 (20)
Más de Takashi Okamoto (11)
分散バージョン管理システムって何なん 20101218
- 9. OSS バージョン管理システムの発展
アトミックなコミット
フィーチャ・タスク単位の履歴管理
楽観ロックの併用
vers
分散バージョン管理
CVS Subversion システム
(Git,Mercurial,Bazaar)
共有モデルによるファイル管理 ブランチ・マージモデル
ファイル単位の履歴管理 ローカルコミット
上書きの回避・編集の競合のマージ ローカルでの diff/ 履歴調査
ブランチによる並行開発 ログのリファクタリング
マージトラッキング
- 10. 中央型モデルと分散型モデル
中央型 分散型
作業用のファイルのみ保持 クローンした各個人のリポジトリを保持
分散バージョン管理のメリット / デメリット
オフラインで作業可能 ロックができない
競合の影響を受けにくい 中央リポジトリへの反映が
マージのトラッキングが可能 遅くなる
フォークが楽 フォークが乱立
- 11. Darcs GNU Arch
主な分散バージョン
管理システム
SVK
Codeville
Monotone
- 12. Git
● Linux が利用していた BitKeeper のライセンス
の問題により Linus Torvals により開発される。
●
採用プロジェクト
● Linux Kernel,Ruby on Rails,Perl,Android,Gnome,
X.org,PostgreSQL,Chromium
● 主に Ruby/Linux 系の開発者に多い
● フリーのホスティングサービス
● GitHub ,Assembla,SourceForge.JP,CodeRepos
- 13. ●
ローマ神話に登場する神マーキュリー ( 商業、盗
賊、雄弁、学問の神 ) の形容詞。水銀 ( 元素記号 hg)
●
多数のスポンサー企業
● 採用プロジェクト
● Python,OpenJDK,OpenSolaris,OpenOffice,
NetBeans,Xen,Mozilla,Go 言語
● Oracle( 元 Sun) 系の OSS に多い
●
フリーのホスティングサービス
● BitBucket 、 SourceForge.JP 、 Assembla
● Google Code 、 CodePlex
- 14. Bazaar
● Canonical LTD の支援のもと開発。
● Gnu プロジェクト
●
日本語のハンドリングが完璧
●
採用プロジェクト
● Ubuntu, Mailman, MySQL, MariaDB, Bugzilla,
Squid, Eucalyptus,OpenStack
●
フリーのホスティングサービス
●
LaunchPad
- 15. かんたんな比較表
項目 Git Mercurial Bazaar
日本語対応 コミット ○ ○ ○
(CUI) メッセージ
ファイル名 ○( 要設定 ) ○(cygwin+utf-8) ◎
リビジョン表示 ハッシュ ハッシュ / ナンバー ナンバー
プロキシ認証 ○ ○ ×
GUI Windows TortoiseGit TortoiseHg bazaar-explorer
MacOSX GitX/Tower MacHg bazaar-explorer
Linux qgit Hgtk,hgct bazaar-explorer
開発環境との Eclipse EGit Mercurial Eclipse Eclipse Bzr
統合
Visual Git Mercurial SCC plugins for Bazzar Integration
Studio Extensions MS Visual Studio for Visutal Studio
チケットシステム (ITS,BTS) Trac,JIRA, Trac,JIRA,Redmine Trac,JIRA,Redmine
の対応 Redmine
ホスティング GitHub, BitBucket, launchpad
sf.jp, Google Code
asembla sf.jp
- 16. リビジョン表示
Mercurial と Bazaar は番号で
表示できるので分かり易い
commit 1746860854eabb319805718484327a9b05629aba
Git Author: U-piccolookamototk <okamototk@hoge.com>
Date: Thu Dec 9 19:27:34 2010 +0900
テストのコミット。
changeset: 2:6ec235a59683
Mercurial tag:
user:
date:
tip
okamototk
Thu Dec 09 19:19:54 2010 +0900
summary: テストのコミット。
revno: 1
committer: Takashi Okamoto<hoge@hoge.com>
Bazaar branch nick: win32app
timestamp: Thu 2010-12-10 18:56:26 +0900
message:
テストのコミット
- 21. まとめ
● ギークを目指すなら Git
●
Linux/Ruby 系の人に多い
●
分かり難いことこそ美徳だ
●
初心者とフランス好きには Mercurial をお勧め !!
● リビジョンが分かり易い
● そこそこ実績も多いし、スポンサーがあり安心
●
TortoiseHg で Windows サポートもばっちり
●
ヨーロッパで人気があるので使ってればヨーロッパ出張とかあるか
も
● Bazaar
●
日本語対応完璧
●
デメリットもあるので Subversion から移行しないことも検討しよう