柿本匡章
Git勉強会

アジェンダ
■ Gitの基礎知識
■ Gitで何が変わるのか
■ Gitの簡単なコマンドの使い方
■ Gitの運用フロー
■ GitHub Enterpriseのススメ
まずは、こちらのグラフを御覧ください
http://www.google.com/trends/explore?hl=ja#q=subversion,
+git&cmpt=q
「人はつねに、学べばわかるより良い方法よりも、慣れてし
まったより悪い方法を使うことを好む。 — ルソー」
Gitの基礎知識
■ デザイナのためのGit入門
http://www.slideshare.net/slideshow/embed_code/16343460#
これを見ればだいたいわかる。
Linus曰く「Subversionは史上最も無意味なプロジェクト」
■ 『ぼくの CVS への憎悪が意味するのは、ぼくが Subversion のこと
を史上最大の無意味なプロジェクトだと見ているということだ。
Subversion がしばらくの間スローガンにしていたのに、「ちゃんと
した CVS」みたいなのがあったよね。そんなスローガンでスタート
したら、もうどこにも行くところがない。CVS をちゃんとすること
なんて不可能だからだ。』
と述べていたとのこと。
「CVSやSVN が好きな人は精神病院に行ったほうがいい」
「tarボールとパッチのほうがはるかに優れたソースコード管理方法だ」
などと怪気炎を上げていたそうです。
Gitで何が変わるのか?
■ 集中型から分散型に変わる
■ ローカルリポジトリにより利便性が増す。より自由になれる。
■ 自由度が高い分、やり方がわかりにくい。しかし、噛めば噛むほど味が出てくる
スルメのようなもの
■ ブランチの扱いが変わる
■ 運用ルールが変わる。ブランチが手軽に作成できる。
Subversionのブランチは、ディレクトリをコピーしているだけ(典型的にはtrunkの下をbranchesの下に
ブランチ名ディレクトリを作ってその下にコピー)
■ マージが楽になる。
■ おバカなSVNのマージとはおさらばできる。
Subversionのマージは、ブランチが一本化するわけではなく、そのディレクトリ以下の修正を別のディレ
クトリに反映するだけ
注意:Gitにツールを変えても、SVNと同じ使い方をしていたのでは、意味
が無い。
SubversionとGitの違い
subversion

・単一リポジトリ(リポジトリは一つだけ)

・commit したら即反映

・add するのは新規にファイルを追加するときだけ

・リビジョン番号は数字

・考えるのは『ローカル( checkout した場所)』と『リポジトリ』の2つだけ


git

・分散リポジトリ(マスターリポジトリは一つ。でも個人リポジトリを自由に作れる)

・commit しても個人リポジトリにしか反映されない
 (push するとマスターリポジトリに反映)

・commit 前には毎回 add する必要あり

・リビジョン番号はハッシュ値

・考えるのは『ローカル』と『インデックス』と『個人リポジトリ』と『マスターリポ
ジトリ』の4つ
( ´_ゝ`)フーン
一言で言うと
ブランチ管理が高速で
簡単
Gitの簡単なコマンドの使い方
■ Git-SVNコマンド比較
http://www.backlog.jp/git-guide/reference/git-svn.html
Gitの運用フロー
http://www.slideshare.net/add20/ss-11951387
GitHub Enterpriseのススメ
■ GitHubとはプログラマのためのソーシャルネットワーキングサイト
■ Gitをわかりやすく親しみやすい感じにした。
■ ソースコードを見るのが楽しくなるツール
■ 社内にGitHubを導入したらどうか?
■ 企業向けがEnterprise
導入してる企業たくさん
http://dqn.sakusakutto.jp/2012/10/github_introduce.html
■ Pull Requestというレビュー機能おすすめ
■ 「ソーシャルコーディング」の目玉機能であるPull Request
http://www.atmarkit.co.jp/ait/articles/1401/21/news042.html
■ ソースコードを検索したり,スターを付けてソースコード
を評価できるのが簡単
■ 別のツールを使わなくてもレビューした結果をソーシャル
に共有できるのが便利
Gitを使ってみましょう!
何か質問ありますか?

Git勉強会