オールフェスタ Git勉強会資料 (public)

49
Git でやろう。 2014.07.28 オールフェスタ 社内勉強会

description

Gitを扱ったことがないメンバーを対象に行った社内勉強会の資料です。

Transcript of オールフェスタ Git勉強会資料 (public)

Page 1: オールフェスタ Git勉強会資料 (public)

Git でやろう。2014.07.28

オールフェスタ 社内勉強会

Page 2: オールフェスタ Git勉強会資料 (public)

この勉強会の狙い

1.Gitの導入メリットを知る

2.基本的な使い方を知る

Page 3: オールフェスタ Git勉強会資料 (public)

大きな狙いそれ自体が直接価値を生まない作業を、 ツールの力を使って減らし、 価値を生む作業に全力を注ぐことで、 仕事をもっとたのしくする。

Page 4: オールフェスタ Git勉強会資料 (public)

1. 導入のメリット

2. 基本的な仕組みと流れ

3. 実践

アジェンダ

Page 5: オールフェスタ Git勉強会資料 (public)

導入のメリット

• ファイル管理が標準化できる

• コードレビューが容易に行える

• 複数人での開発を効率的に行える

Page 6: オールフェスタ Git勉強会資料 (public)

ファイル管理を 標準化

Page 7: オールフェスタ Git勉強会資料 (public)

AFあるある

別バージョンを作りたいから 違う名前にして保存しよう!

別verファイル:index2.html

元ファイル: index.html

別バージョンを名前をつけて保存

Page 8: オールフェスタ Git勉強会資料 (public)

・・・。

_index.html index_0730.html index_最新.html

結果、カオス。

index_田所修正.html indexのコピー.html 0730/index.html

AFあるある

Page 9: オールフェスタ Git勉強会資料 (public)

楽しくない© タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 サイト名: 漫画 on web URL: http://mangaonweb.com/

Page 10: オールフェスタ Git勉強会資料 (public)
Page 11: オールフェスタ Git勉強会資料 (public)

Gitなら!「いつ」

「だれが 」

「どんな目的のために」

「なにをした」をもとに

ファイルを管理できる。

Page 12: オールフェスタ Git勉強会資料 (public)

「コミット」

「なにをした」の単位を

「コミット」という。

(あとでまた出てくる)

コミット

コミット

コミット

Page 13: オールフェスタ Git勉強会資料 (public)

実際の画面

Page 14: オールフェスタ Git勉強会資料 (public)

「ファイル管理にムダに気を使う」

という「直接価値を生まない作業」を

なくす。

Page 15: オールフェスタ Git勉強会資料 (public)

コードレビューを 容易に

Page 16: オールフェスタ Git勉強会資料 (public)

コードレビュー?コードレビュー(英: Code review)は、ソフトウェ

ア開発工程で見過ごされた誤りを検出・修正するため

にソースコードの体系的な検査(査読)を行うこと。

ソフトウェア品質を高めると同時に開発スキルの向上

を図ることができる。- wikipedia

Page 17: オールフェスタ Git勉強会資料 (public)

page.css、修正しました!

追加・変更箇所がわからない

AFあるある

(page.cssのどこだよ…)

Page 18: オールフェスタ Git勉強会資料 (public)

楽しくない© タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 サイト名: 漫画 on web URL: http://mangaonweb.com/

Page 19: オールフェスタ Git勉強会資料 (public)
Page 20: オールフェスタ Git勉強会資料 (public)

Gitなら!「なにが追加された」

「なにが削除された 」

「どう変更された」を

とても簡単に確認できる。

Page 21: オールフェスタ Git勉強会資料 (public)

実際の画面

Page 22: オールフェスタ Git勉強会資料 (public)

実際の画面

Page 23: オールフェスタ Git勉強会資料 (public)

変更・追加・削除を 簡単に確認できるので、コードレビューを

お互いにもっと活発にやっていきたい

→品質の向上 →スキルの向上

Page 24: オールフェスタ Git勉強会資料 (public)

複数人での開発を 効率的に

Page 25: オールフェスタ Git勉強会資料 (public)

わーいできた!

同じファイルを同時に編集

AFあるある

Page 26: オールフェスタ Git勉強会資料 (public)

・・・。

結果、衝突。

AFあるある

Page 27: オールフェスタ Git勉強会資料 (public)

楽しくない

© タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 サイト名: 漫画 on web URL: http://mangaonweb.com/

Page 28: オールフェスタ Git勉強会資料 (public)

・・・。

衝突を避けるために片方が待機

AFあるある

Page 29: オールフェスタ Git勉強会資料 (public)

楽しくない

© タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 サイト名: 漫画 on web URL: http://mangaonweb.com/

Page 30: オールフェスタ Git勉強会資料 (public)
Page 31: オールフェスタ Git勉強会資料 (public)

Gitなら!リポジトリ(ファイル置き場)と

作業ツリー(作業場)が

別になっているので、

同じファイルを

同時に編集しても問題ない。

Page 32: オールフェスタ Git勉強会資料 (public)

Gitなら!競合が起きたら、

起きている箇所を

知らせたうえで、

どのようにするかを

決定できる。

Page 33: オールフェスタ Git勉強会資料 (public)

実際の画面

Page 34: オールフェスタ Git勉強会資料 (public)

競合の解決• 自分を相手に合わせる

• 相手を自分に合わせる←トラブルになりやすい

• 両方の変更を確認して手作業で合わせ込む

Page 35: オールフェスタ Git勉強会資料 (public)

導入のメリット

• ファイル管理が標準化できる

• コードレビューが容易に行える

• 複数人での開発を効率的に行える

Page 36: オールフェスタ Git勉強会資料 (public)

基本的な仕組みと流れ用語はSourceTreeでの呼び方に準じます。

Page 37: オールフェスタ Git勉強会資料 (public)

全体像リモートリポジトリ

ローカルリポジトリ

インデックス

作業ツリー 他の開発者

Page 38: オールフェスタ Git勉強会資料 (public)

いま作業している対象のファイルを

置いておくところ

作業ツリー

Page 39: オールフェスタ Git勉強会資料 (public)

ひとまとめにしてコミットしたいファイルを

とりあえず置いておくところ

インデックス

Page 40: オールフェスタ Git勉強会資料 (public)

作業ツリー インデックス

ステージ(ング)コミットしたいファイルを登録すること

Page 41: オールフェスタ Git勉強会資料 (public)

リモートリポジトリに送るコミットを

記録する場所

ローカルリポジトリ

Page 42: オールフェスタ Git勉強会資料 (public)

インデックス

コミット「なにをした」の単位を記録すること

ローカルリポジトリ

Page 43: オールフェスタ Git勉強会資料 (public)

複数人で共有するリポジトリ

リモートリポジトリ

Page 44: オールフェスタ Git勉強会資料 (public)

ローカルリポジトリ

プッシュローカルリポジトリの内容を リモートリポジトリに送ること

リモートリポジトリ

Page 45: オールフェスタ Git勉強会資料 (public)

リモートリポジトリ

プルプッシュの逆。 リモートリポジトリの内容を ローカルリポジトリに反映

ローカルリポジトリ

Page 46: オールフェスタ Git勉強会資料 (public)

流れは

「郵便を送る際の手順」

に似ている。

Page 47: オールフェスタ Git勉強会資料 (public)

郵便 Git手紙を書く 作業ツリーの

ファイルを編集

封筒に入れる インデックスに ステージする

封筒の封をする コミットする

ポストにいれる プッシュする

受け取る プルする

Page 48: オールフェスタ Git勉強会資料 (public)

なんとなくの理解でOK。

やってくうちに覚えます。

やってくうちに覚えられない場合は…フフフ…

Page 49: オールフェスタ Git勉強会資料 (public)

実践

その前にいったん休憩。

休憩後は実際に触ってみよう。