20090601 Git Introduction

Post on 20-Jun-2015

806 views 0 download

transcript

Git詳解紹介Rimpei Ogawa

2009/6/1 - Tejimaya Kaihatsubu Benkyo-kai

こんにちは!

みなさん

毎日バージョン管理してますよね?

本日ご紹介するの

は...

バージョン管理システムの大本命

ぎっと

git

対象

SVNはばっちりGitはさっぱりなあなた

えーマジ

まだSVNしか

使ってないの?

SVNが許されるのは小学生までだよねー キャハハ ハハハハ

というのは冗談ですが

GitはSVNとはひと味違う

バージョン管理システム

ゆるく紹介していきます

目的

gitを使う気になってもらう

ということで詳しい操作方法や設計の話はないです

期待してた人もしいたらごめんなさい

では、ここから本編

バージョン管理システムには大きく分けて

2つの種類があります

(1)集中型

1つのリポジトリで集中管理

例:SVNCVS

(2)分散型

個々の開発者がリポジトリを持つ

例:git

Mercurial

gitは分散型

分散型のメリット

気楽にコミットできる

ローカルリポジトリは自分の領域なので

とっても気楽

SVNコミットってけっこう緊張しますよね

中央リポジトリにコミット権がなくても開発できる

何の気兼ねもなくオレオレブランチ作り放題

オフラインでも使える

サーバ落ちてもサーバ遅くてもストレスなく

コミットできますブランチ作れますマージできます

複数リポジトリ間でマージできる

Subversionだとできなくて困る

でもそれって

SVKでよくね?

たしかに

SVKも分散型だし

既存のSVNリポジトリもそのまま使えるし

コマンドもほとんどSVNと一緒だし

最高じゃね?

と思った方へ

突然ですが、ニュースです

SVK新規開発終了のお知らせ

2009/5/28

SVK開発者のChia-liang Kaoさん曰く、

“using Subversion's filesystem as SVK's backend has become one of SVK's primary technical issues, as we found it to be inadequate as a storage backend for more complicated merges, which require a lot of traversal.”http://lists.bestpractical.com/pipermail/svk-devel/2009-May/001224.html

Subversionがバックエンドだと、複雑なマージとかきついっす

“The open source community has moved on from the Subversion model a lot sooner than many people thought, to a variety of version control systems designed from scratch with distributed development in mind.”http://lists.bestpractical.com/pipermail/svk-devel/2009-May/001224.html

オープンソースコミュニティはみんなが考えてるよりもずっと早く、分散型で設計されたVCSに移ってますよ!

以上、ニュースでした。

さて、

Gitやりたくなってきましたか?

Gitの特徴

Distributed分散型

分散型のメリットは前述の通り

SVKとは違い初めから分散型として設計されている

Fastはえー

SVNでいうところのmerge/switchが超速い

大規模プロジェクトでも

おk

だって、Linuxカーネル管理するために作られたん

だぜ

Gitを採用しているプロジェクト

GitLinux KernelPerlGnomeRuby on Rails

AndroidWineFedoraX.orgVLCPrototype

まとめ

Git is a(1)distributed

(2)fastversion control system.

第2部

GitHubがすごい

Gitのホスティングサイト

SVNから引っ越したいんですけど

はい。それ、ブラウザからできます

他の人のリポジトリからフォークして開発したい

はい。それ、ブラウザからできます

自分の書いた変更を取り込んでくださいって伝えたい

はい。それ、ブラウザからできます

1ファイルだけなんだけど、バージョン管理したいソースってあるよね

はい。Gistを使えばかんたんにできます

プロジェクト管理にはTracみたいな機能は必須だよね

はい。もちろん付いてます。wiki/ticket

んーでも、Tracはそのまま残したいんだけど

はい。Tracとの連携もできます

SVNみたいに更新情報をメールで飛ばしたりできないのかな?

はい。メール、Twitterをはじめ様々な方法で通知できます

これだけ色々できるってことは、お高いんじゃないですか?

いいえ。公開リポジトリならすべて無料です

非公開でも月7$~

今すぐアクセス!http://

github.com/

以上、CMでした。

GitHubを使っているプロジェクト

Ruby on Railsrspecmerbredmine

scriptaculousprototypePlaggerMojo

opDiaryPluginopWebAPIPluginopWikiPluginなどなど

まとめ

gitをはじめるならGitHubがおすすめ

よきgitライフを

ご清聴ありがとうございました