第32回PHP勉強会 LT 極めてない! Git

Preview:

Citation preview

第32回PHP勉強会極めてない!

Git

自己紹介

高橋邦彦

kunit

Maple

PHPFramework

Fight!

Konstrukt でエントリ

さて

Git

なんて読む?

じっと

ぎっと

じーあいてぃー

GIF問題再燃

SABELはなんて(ry

バージョン管理システム比較

CVS

ロックをして管理するRCSの発展系

逆に言えば

これより前のものは

他の人が更新中のファイルは変更不可

オープンソース開発には

CVSは必要だった

ファイルの更新履歴しか管理できない

しかもファイル名を変更すると履歴が切れる

ファイル毎にバージョン管理

Subversion

ディレクトリも管理できるように

なった

ファイル名変更も大丈夫

commit単位でのリビジョン管理

Tracというキラーアプリも

登場

もうSubversionでいいんじゃね?

Linus 曰く “Subversionは 史上最も無意味な プロジェクト”

Linus?

Gitの歴史

最初

Linuxカーネルの開発は

tar + patch

Linusにメールして

取り込んでもらう

破綻

商用ソフトBitKeeper を

採用

OSS開発なら無料でいいよ

しかし決裂

なら自分で作るよ

Git は Linus がLinux カーネル開発用に作った

今のメンテナーは

Junio C Hamano

実は日本人

浜野純さん(昔の仕事仲間...)

特徴

(1)

分散

CVSSubversion

リポジトリ

ワーキングコピー ワーキングコピー

commit

checkout checkout

Git

リポジトリ

リポジトリ リポジトリpull/push

pull/push pull/push

commit

ワーキングコピー

ついでに

SVK

リポジトリ

mirror/sync

push

ミラー作業用ブランチcopy/pull

ワーキングコピー

checkout/update commit

(2)

ブランチきり放題

というか

ブランチを切りまくることが前提

マージのロジックに力を入れてる

おかしくなったリビジョンを見つけるためのコマンドがある

(bisect)

なぜ今Git

GitHub

Ruby on Rails で実装された

gitリポジトリのホスティングサービス

Ruby関連のプロダクトがこぞって移行

もちろん Ruby on Rails も

移行

そして達人プログラマーも

今日話した内容は

ほぼここからです

今日の内容を忘れて

バックナンバーを買ってください

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

Recommended