SlideShare a Scribd company logo
1 of 41
Git 入門
<htmlday> in Tokushima
Presented by か (@ka_)
バージョン管理とは
●
開発物のバージョンを管理すること
●
バージョン管理ツールは
Version Control System (VCS) とも呼ばれる
VCS で得られるメリット
●
変更履歴を残せる ( 基本 )
– 昔に戻れる
– 気楽に新機能を試せる
●
開発の進行をシステム化出来る
●
共同開発が容易になる
●
コンフリクト ( 競合 ) 解消の手間を最小化
Git とは
●
バージョン管理ツールの 1 つ
●
リポジトリ分散型という特徴を持つ
●
広く世界中で使われている ( 出典不要 )
●
マージ ( 後で説明します ) が速い
Git で得られるメリット
●
GitHub, Bitbucket が使える
●
OSS に最適
– Pull Request という最高の開発フロー
●
Heroku が使える
●
TravisCI が使える
●
Jenkins が使える
●
その他諸々
GitHub についての余談
●
とある TED のセッション
– クレイ・シャーキー 「インターネットが (いつの日か) 政治を変える」
Git 以外の話
●
分散型の VCS は Git 以外にもある
– メジャーどころ
● Mercurial
● Bazaar
●
他にも結構ある
●
Git が多数派
●
正直 Mercurial も魅力的
環境構築
● Windows
– msysgit + TortoiseGit
● Mac
– SourceTree
  msysgit のセットアップ
●
ダウンロード
●
インストール
– .NET Framework 3.5 以上が必要かも
●
再起動が必要かも
ダウンロード 1
ダウンロード 1
クリック
ダウンロード 2
ダウンロード 2
クリック
インストール 1
インストール 2
インストール 3
インストール 4
●
Git Bash here にチェック
インストール 5
インストール 6
●
Use Git Bash only を選択
インストール 7
●
Checkout Windows style, … を選択
TortoiseGit のセットアップ
●
ダウンロード
●
インストール
– 初期設定
ダウンロード
ダウンロード
どちらかクリック
インストール 1
インストール 2
インストール 3
●
OpenSSH, Git default SSH Client を選択
インストール 4
インストール 5
SourceTree のセットアップ
●
ダウンロード
●
インストール
●
かんたん!!
ダウンロード
ダウンロード
クリック
インストール 1
●
名前とメールアドレスを入力
インストール 2
用語説明
●
コミット
●
リポジトリ
●
ブランチ
●
チェックアウト
●
マージ
コミット
●
( 語弊はあるが ) 1 つのバージョンのこと
●
これを重ねていくことが開発の進行
全てコミット
リポジトリ
●
コミットの集合
●
歴史そのもの
●
これのコピーを容易に作れるのが分散型
リポジトリ
この絵をリビジョングラフと言ったりする
ブランチ
●
枝分かれしていくコミットの流れのこと
●
これを作ることを「ブランチを切る」と言う
ブランチ
これもブランチ
チェックアウト
●
ブランチを切り替えること
●
コミットをどのブランチに重ねていくか
マージ
●
ブランチを合流させること
この形は non fast forward merge と言う
ここにも 1 つのコミットが出来る
Fast Forward とは?
●
ブランチは大体以下のような作り方になる
●
この場合「合流」しなくても良い
●
元のブランチを Fast Forward ( 早送り )
どう使い分けるか ( 例 )
● Non Fast Forward
– 複数のコミットをひとまとめにしたい
● Fast Forward
– コミットが 1 つしか無い
– ブランチの情報が失われても良い
– リビジョングラフを綺麗な一本の線にしたい
●
↑ これは微妙な動機

More Related Content

What's hot

20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料openconcierge
 
【社内輪読会】Github実践入門2章
【社内輪読会】Github実践入門2章【社内輪読会】Github実践入門2章
【社内輪読会】Github実践入門2章Akira Torii
 
[ノマワクラボ 第2回Web勉強会] Git入門
[ノマワクラボ 第2回Web勉強会] Git入門[ノマワクラボ 第2回Web勉強会] Git入門
[ノマワクラボ 第2回Web勉強会] Git入門Toru Tamura
 
SvnからGitへの移行について
SvnからGitへの移行についてSvnからGitへの移行について
SvnからGitへの移行についてngi group.
 
なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習石橋 啓太
 
Git lev 3 -おひとりさまでブランチを-
Git lev 3 -おひとりさまでブランチを-Git lev 3 -おひとりさまでブランチを-
Git lev 3 -おひとりさまでブランチを-Kentarou Kurashige
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにKazuki Sakai
 
バージョン管理Git
バージョン管理Gitバージョン管理Git
バージョン管理Git松本 雄貴
 
Git flow概要紹介
Git flow概要紹介Git flow概要紹介
Git flow概要紹介y42sora
 
ノンプログラマのGit入門
ノンプログラマのGit入門ノンプログラマのGit入門
ノンプログラマのGit入門Muyuu Fujita
 
第1回Git勉強会
第1回Git勉強会第1回Git勉強会
第1回Git勉強会kunimiya
 
Github と仲良くなろう!
Github と仲良くなろう!Github と仲良くなろう!
Github と仲良くなろう!Kentaro Ohkouchi
 
日本語翻訳 How we use Bitbucket to build Bitbucket
日本語翻訳 How we use Bitbucket to build Bitbucket日本語翻訳 How we use Bitbucket to build Bitbucket
日本語翻訳 How we use Bitbucket to build BitbucketShunsuke (Sean) Osawa
 

What's hot (20)

Git勉強会 #01
Git勉強会 #01Git勉強会 #01
Git勉強会 #01
 
20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料
 
【社内輪読会】Github実践入門2章
【社内輪読会】Github実践入門2章【社内輪読会】Github実践入門2章
【社内輪読会】Github実践入門2章
 
[ノマワクラボ 第2回Web勉強会] Git入門
[ノマワクラボ 第2回Web勉強会] Git入門[ノマワクラボ 第2回Web勉強会] Git入門
[ノマワクラボ 第2回Web勉強会] Git入門
 
Git 20100313
Git 20100313Git 20100313
Git 20100313
 
Git flow
Git flowGit flow
Git flow
 
SvnからGitへの移行について
SvnからGitへの移行についてSvnからGitへの移行について
SvnからGitへの移行について
 
なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習
 
Gitの勉強 紹介編-
Gitの勉強 紹介編-Gitの勉強 紹介編-
Gitの勉強 紹介編-
 
Aedlabo git seminer
Aedlabo git seminerAedlabo git seminer
Aedlabo git seminer
 
Git lev 3 -おひとりさまでブランチを-
Git lev 3 -おひとりさまでブランチを-Git lev 3 -おひとりさまでブランチを-
Git lev 3 -おひとりさまでブランチを-
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめに
 
バージョン管理Git
バージョン管理Gitバージョン管理Git
バージョン管理Git
 
Git flow概要紹介
Git flow概要紹介Git flow概要紹介
Git flow概要紹介
 
ノンプログラマのGit入門
ノンプログラマのGit入門ノンプログラマのGit入門
ノンプログラマのGit入門
 
第1回Git勉強会
第1回Git勉強会第1回Git勉強会
第1回Git勉強会
 
Github と仲良くなろう!
Github と仲良くなろう!Github と仲良くなろう!
Github と仲良くなろう!
 
Git lev 4 -みんなでGit-
Git lev 4 -みんなでGit-Git lev 4 -みんなでGit-
Git lev 4 -みんなでGit-
 
日本語翻訳 How we use Bitbucket to build Bitbucket
日本語翻訳 How we use Bitbucket to build Bitbucket日本語翻訳 How we use Bitbucket to build Bitbucket
日本語翻訳 How we use Bitbucket to build Bitbucket
 
Gitの設定
Gitの設定Gitの設定
Gitの設定
 

Similar to 20130608 git-0

Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門kazuki kuriyama
 
git入門(講義っぽく)
git入門(講義っぽく)git入門(講義っぽく)
git入門(講義っぽく)kataware
 
Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Kosuke Tanabe
 
Version Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルVersion Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルComputational Materials Science Initiative
 
バージョン管理システムチュートリアル
バージョン管理システムチュートリアルバージョン管理システムチュートリアル
バージョン管理システムチュートリアルRyo Igarashi
 
Git 入門ちょい手前
Git 入門ちょい手前Git 入門ちょい手前
Git 入門ちょい手前Yuichi Goto
 
Git社内勉強会資料
Git社内勉強会資料Git社内勉強会資料
Git社内勉強会資料Kenji Takei
 
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab満徳 関
 
バージョン管理システム比較資料
バージョン管理システム比較資料バージョン管理システム比較資料
バージョン管理システム比較資料suzzsegv
 
超初心者のためのGitマニュアル
超初心者のためのGitマニュアル超初心者のためのGitマニュアル
超初心者のためのGitマニュアルMasakiKato14
 
猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座Yusei Yamanaka
 
8つの操作ではじめるGit
8つの操作ではじめるGit8つの操作ではじめるGit
8つの操作ではじめるGitDelfinoAzul
 
新人Git/Github研修公開用スライド(その2)
新人Git/Github研修公開用スライド(その2)新人Git/Github研修公開用スライド(その2)
新人Git/Github研修公開用スライド(その2)pupupopo88
 
Git SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しようGit SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しよう富士見研究所
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理Takafumi Yoshida
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwellsinsoku listy
 

Similar to 20130608 git-0 (20)

Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門
 
git入門(講義っぽく)
git入門(講義っぽく)git入門(講義っぽく)
git入門(講義っぽく)
 
Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02
 
Version Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルVersion Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアル
 
Svn+Git
Svn+GitSvn+Git
Svn+Git
 
バージョン管理システムチュートリアル
バージョン管理システムチュートリアルバージョン管理システムチュートリアル
バージョン管理システムチュートリアル
 
Git 入門ちょい手前
Git 入門ちょい手前Git 入門ちょい手前
Git 入門ちょい手前
 
Github入門2014
Github入門2014Github入門2014
Github入門2014
 
Git社内勉強会資料
Git社内勉強会資料Git社内勉強会資料
Git社内勉強会資料
 
Git地図
Git地図Git地図
Git地図
 
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab
『超初心者向け!visual studio + git で始めるアジャイル開発』 .NETラボ勉強会 #dotnetlab
 
バージョン管理システム比較資料
バージョン管理システム比較資料バージョン管理システム比較資料
バージョン管理システム比較資料
 
超初心者のためのGitマニュアル
超初心者のためのGitマニュアル超初心者のためのGitマニュアル
超初心者のためのGitマニュアル
 
猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座
 
8つの操作ではじめるGit
8つの操作ではじめるGit8つの操作ではじめるGit
8つの操作ではじめるGit
 
新人Git/Github研修公開用スライド(その2)
新人Git/Github研修公開用スライド(その2)新人Git/Github研修公開用スライド(その2)
新人Git/Github研修公開用スライド(その2)
 
Git SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しようGit SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しよう
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 
Git 20100724
Git 20100724Git 20100724
Git 20100724
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
 

20130608 git-0