Top Banner
Git 入門 <htmlday> in Tokushima Presented by (@ka_)
41

20130608 git-0

Jul 14, 2015

Download

Documents

Kasu Unko
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 20130608 git-0

Git 入門<htmlday> in Tokushima

Presented by か (@ka_)

Page 2: 20130608 git-0

バージョン管理とは

● 開発物のバージョンを管理すること

● バージョン管理ツールは

Version Control System (VCS) とも呼ばれる

Page 3: 20130608 git-0

VCS で得られるメリット

● 変更履歴を残せる ( 基本 )

– 昔に戻れる

– 気楽に新機能を試せる

● 開発の進行をシステム化出来る

● 共同開発が容易になる

● コンフリクト ( 競合 ) 解消の手間を最小化

Page 4: 20130608 git-0

Git とは

● バージョン管理ツールの 1 つ

● リポジトリ分散型という特徴を持つ

● 広く世界中で使われている ( 出典不要 )

● マージ ( 後で説明します ) が速い

Page 5: 20130608 git-0

Git で得られるメリット● GitHub, Bitbucket が使える

● OSS に最適

– Pull Request という最高の開発フロー

● Heroku が使える

● TravisCI が使える

● Jenkins が使える

● その他諸々

Page 6: 20130608 git-0

GitHub についての余談

● とある TED のセッション

– クレイ・シャーキー 「インターネットが (いつの日か) 政治を変える」

Page 7: 20130608 git-0

Git 以外の話

● 分散型の VCS は Git 以外にもある

– メジャーどころ● Mercurial● Bazaar

● 他にも結構ある

● Git が多数派

● 正直 Mercurial も魅力的

Page 8: 20130608 git-0

環境構築● Windows

– msysgit + TortoiseGit

● Mac– SourceTree

Page 9: 20130608 git-0

  msysgit のセットアップ

● ダウンロード

● インストール

– .NET Framework 3.5 以上が必要かも

● 再起動が必要かも

Page 10: 20130608 git-0

ダウンロード 1

Page 11: 20130608 git-0

ダウンロード 1

クリック

Page 12: 20130608 git-0

ダウンロード 2

Page 13: 20130608 git-0

ダウンロード 2

クリック

Page 14: 20130608 git-0

インストール 1

Page 15: 20130608 git-0

インストール 2

Page 16: 20130608 git-0

インストール 3

Page 17: 20130608 git-0

インストール 4

● Git Bash here にチェック

Page 18: 20130608 git-0

インストール 5

Page 19: 20130608 git-0

インストール 6

● Use Git Bash only を選択

Page 20: 20130608 git-0

インストール 7

● Checkout Windows style, … を選択

Page 21: 20130608 git-0

TortoiseGit のセットアップ

● ダウンロード

● インストール

– 初期設定

Page 22: 20130608 git-0

ダウンロード

Page 23: 20130608 git-0

ダウンロード

どちらかクリック

Page 24: 20130608 git-0

インストール 1

Page 25: 20130608 git-0

インストール 2

Page 26: 20130608 git-0

インストール 3

● OpenSSH, Git default SSH Client を選択

Page 27: 20130608 git-0

インストール 4

Page 28: 20130608 git-0

インストール 5

Page 29: 20130608 git-0

SourceTree のセットアップ

● ダウンロード

● インストール

● かんたん!!

Page 30: 20130608 git-0

ダウンロード

Page 31: 20130608 git-0

ダウンロード

クリック

Page 32: 20130608 git-0

インストール 1

● 名前とメールアドレスを入力

Page 33: 20130608 git-0

インストール 2

Page 34: 20130608 git-0

用語説明

● コミット

● リポジトリ

● ブランチ

● チェックアウト

● マージ

Page 35: 20130608 git-0

コミット

● ( 語弊はあるが ) 1 つのバージョンのこと

● これを重ねていくことが開発の進行

全てコミット

Page 36: 20130608 git-0

リポジトリ

● コミットの集合

● 歴史そのもの

● これのコピーを容易に作れるのが分散型

リポジトリ

この絵をリビジョングラフと言ったりする

Page 37: 20130608 git-0

ブランチ

● 枝分かれしていくコミットの流れのこと

● これを作ることを「ブランチを切る」と言う

ブランチ

これもブランチ

Page 38: 20130608 git-0

チェックアウト

● ブランチを切り替えること

● コミットをどのブランチに重ねていくか

Page 39: 20130608 git-0

マージ

● ブランチを合流させること

この形は non fast forward merge と言う

ここにも 1 つのコミットが出来る

Page 40: 20130608 git-0

Fast Forward とは?

● ブランチは大体以下のような作り方になる

● この場合「合流」しなくても良い

● 元のブランチを Fast Forward ( 早送り )

Page 41: 20130608 git-0

どう使い分けるか ( 例 )

● Non Fast Forward

– 複数のコミットをひとまとめにしたい

● Fast Forward

– コミットが 1 つしか無い

– ブランチの情報が失われても良い

– リビジョングラフを綺麗な一本の線にしたい

● ↑ これは微妙な動機