SlideShare une entreprise Scribd logo
1  sur  20
Git & GitHub
June 15 2015
Yoshiharu Ikutani
@ NNCT 勉強会
Git & GitHub @NNCT勉強会 1
“知ってるだけで役に立つことがあるなら
それは知っておくべきなんだ”
勉強会のモットー
今日の目標
Git の基本的な使い方を理解する
Git を利用した最新の開発フローを理解する
Git & GitHub @NNCT勉強会 2
アジェンダ
1. Git の解説
2. Git を実際に使ってみる(CUI)
3. Git を使ったワークフロー
Git & GitHub @NNCT勉強会 3
そもそも Git とは?
Git : 分散バージョン管理システム
 中央リポジトリが存在しない分散管理方式
 チェンジセットベースによるリビジョン管理
 ブランチの作成とマージが高速
 GitHub, BitBucketなどのサービスが豊富
Git & GitHub @NNCT勉強会 4
Git の運用モデル
Git & GitHub @NNCT勉強会 5
リモートリポジトリ
etc.
代表的なサービス
ローカルリポジトリ ローカルリポジトリ
開発ファイル群
2種類のリポジトリ:ローカルとリモート
Fork と Clone
Git & GitHub @NNCT勉強会 6
リモートリポジトリ
ローカルリポジトリ ローカルリポジトリ
開発ファイル群
Clone : リモートリポジトリの内容をローカルにそっくりコピー
開発ファイル群
Clone
人気な
プロジェクト
自分の
アカウント
Fork
CommitとPush,そしてPull
Git & GitHub @NNCT勉強会 7
リモートリポジトリ
ローカルリポジトリ ローカルリポジトリ
開発ファイル群
Commit : ローカルリポジトリに変更を登録
Push : リモートリポジトリに変更を登録
Push
開発ファイル群 開発ファイル群
Pull
Branch と Tag
Branch : 本流の開発とは分けて開発を管理
Tag : 任意の時点の状況を保存
Git & GitHub @NNCT勉強会 8
master
function-A
ver 1.0
Tag
Branch
アジェンダ
1. Git の解説
2. Git を実際に使ってみる(CUI)
3. Git を使ったワークフロー
Git & GitHub @NNCT勉強会 9
Gitを実際に使ってみる
Slackにあるドキュメントを使います.
Git & GitHub @NNCT勉強会 10
アジェンダ
1. Git の解説
2. Git を実際に使ってみる(CUI)
3. Git を使ったワークフロー
Git & GitHub @NNCT勉強会 11
ワークフローの主な2種類
git-flow
ブランチ名にきっちりした規約.大規模向け
github-flow
比較的シンプルで簡単.小規模向け
今回はgithub-flowを取り上げる
Git & GitHub @NNCT勉強会 12
github-flowの基本的約束ごと
masterのものはすべてリリース可能である
masterは直接修正しない
masterにマージする前に必ずレビュー
masterへマージしたらすぐ本番環境リリース
Git & GitHub @NNCT勉強会 13
開発ケースの例
Git & GitHub @NNCT勉強会 14
master
function-A
ver 1.0
masterのものはすべてリリース可能である
masterは直接修正しない
ver 1.0はテスト済みかつ
本番環境での動作確認済み
新しい機能を作るときは
必ずBranchを作る
開発ケースの例
Git & GitHub @NNCT勉強会 15
master
function-A
ver 1.0
masterにマージする前に必ずレビュー
開発完了
ブランチ内でテスト
Pull Request
(レビュー要求)
レビュー&テスト
開発ケースの例
Git & GitHub @NNCT勉強会 16
master
function-A
ver 1.0
masterへマージしたらすぐ本番環境リリース
レビューが通れば
masterにマージ
ver 1.1
マージ後
ブランチを削除
開発ケースの例
Git & GitHub @NNCT勉強会 17
master
function-A
ver 1.0
masterへマージしたらすぐ本番環境リリース
ver 1.1
function-B
ファイルの
アップデートを要求
開発者が覚えること
masterはリリース用だから直接触らない
作業を始める前にブランチを切る
作業が終了したらmasterにPull Request
Git & GitHub @NNCT勉強会 18
Git まとめ
Git は分散バージョン管理システム
Branchでトラブルの少ない開発が可能
Git + 作業フローの利用で効率的に開発
Git & GitHub @NNCT勉強会 19

Contenu connexe

Tendances

Gitはじめの一歩
Gitはじめの一歩Gitはじめの一歩
Gitはじめの一歩Ayana Yokota
 
私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみShihomi Katayama
 
日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 githubTomohiko Himura
 
2ヶ月前にgitを始めた私からこれから始める皆さんへ
2ヶ月前にgitを始めた私からこれから始める皆さんへ2ヶ月前にgitを始めた私からこれから始める皆さんへ
2ヶ月前にgitを始めた私からこれから始める皆さんへAyana Yokota
 
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料mihararyosuke
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにKazuki Sakai
 
Gitを使いこなしてみよう!
Gitを使いこなしてみよう!Gitを使いこなしてみよう!
Gitを使いこなしてみよう!Hiroshi Maekawa
 
SourceTreeで始めよう! Gitへの乗り換え指南
SourceTreeで始めよう! Gitへの乗り換え指南SourceTreeで始めよう! Gitへの乗り換え指南
SourceTreeで始めよう! Gitへの乗り換え指南Kouji Matsui
 
【社内勉強会】弊社でGit!実案件での運用
【社内勉強会】弊社でGit!実案件での運用【社内勉強会】弊社でGit!実案件での運用
【社内勉強会】弊社でGit!実案件での運用Reimi Kuramochi Chiba
 
Source treeの紹介
Source treeの紹介Source treeの紹介
Source treeの紹介ko ty
 
超初心者のためのGitマニュアル
超初心者のためのGitマニュアル超初心者のためのGitマニュアル
超初心者のためのGitマニュアルMasakiKato14
 
Git for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンGit for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンEmma Haruka Iwao
 
GitBucketで社内OSSしませんか?
GitBucketで社内OSSしませんか?GitBucketで社内OSSしませんか?
GitBucketで社内OSSしませんか?Kiyotaka Kunihira
 
20160128 jjug Nightセミナー_Git実践入門
20160128 jjug Nightセミナー_Git実践入門20160128 jjug Nightセミナー_Git実践入門
20160128 jjug Nightセミナー_Git実践入門Mizuki Ugajin
 
複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウYasuyuki Niwa
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介Takuya Ueda
 
初心者がGoでCLIツール作ってみて学んだこと
初心者がGoでCLIツール作ってみて学んだこと初心者がGoでCLIツール作ってみて学んだこと
初心者がGoでCLIツール作ってみて学んだことYuta Ohashi
 

Tendances (20)

Gitはじめの一歩
Gitはじめの一歩Gitはじめの一歩
Gitはじめの一歩
 
私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ
 
日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github
 
2ヶ月前にgitを始めた私からこれから始める皆さんへ
2ヶ月前にgitを始めた私からこれから始める皆さんへ2ヶ月前にgitを始めた私からこれから始める皆さんへ
2ヶ月前にgitを始めた私からこれから始める皆さんへ
 
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
Git運用ダメ出し会 - ネクストスケープ 2014/05/27 パワーランチ資料
 
Gitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめにGitコマンド勉強会 第0回 はじめに
Gitコマンド勉強会 第0回 はじめに
 
Gitを使いこなしてみよう!
Gitを使いこなしてみよう!Gitを使いこなしてみよう!
Gitを使いこなしてみよう!
 
SourceTreeで始めよう! Gitへの乗り換え指南
SourceTreeで始めよう! Gitへの乗り換え指南SourceTreeで始めよう! Gitへの乗り換え指南
SourceTreeで始めよう! Gitへの乗り換え指南
 
【社内勉強会】弊社でGit!実案件での運用
【社内勉強会】弊社でGit!実案件での運用【社内勉強会】弊社でGit!実案件での運用
【社内勉強会】弊社でGit!実案件での運用
 
Git flow
Git flowGit flow
Git flow
 
GitHub Handson
GitHub HandsonGitHub Handson
GitHub Handson
 
Source treeの紹介
Source treeの紹介Source treeの紹介
Source treeの紹介
 
XcodeでGit
XcodeでGitXcodeでGit
XcodeでGit
 
超初心者のためのGitマニュアル
超初心者のためのGitマニュアル超初心者のためのGitマニュアル
超初心者のためのGitマニュアル
 
Git for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオンGit for Begineers GitHub ハンズオン
Git for Begineers GitHub ハンズオン
 
GitBucketで社内OSSしませんか?
GitBucketで社内OSSしませんか?GitBucketで社内OSSしませんか?
GitBucketで社内OSSしませんか?
 
20160128 jjug Nightセミナー_Git実践入門
20160128 jjug Nightセミナー_Git実践入門20160128 jjug Nightセミナー_Git実践入門
20160128 jjug Nightセミナー_Git実践入門
 
複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介
 
初心者がGoでCLIツール作ってみて学んだこと
初心者がGoでCLIツール作ってみて学んだこと初心者がGoでCLIツール作ってみて学んだこと
初心者がGoでCLIツール作ってみて学んだこと
 

Similaire à Git @ NNCT programming workshop

ゆるふわっGit入門
ゆるふわっGit入門ゆるふわっGit入門
ゆるふわっGit入門Keisuke Oohata
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会ArusuDev
 
Githubサービスについて
GithubサービスについてGithubサービスについて
GithubサービスについてAkura Pi
 
GitHub勉強会~当日資料~
GitHub勉強会~当日資料~GitHub勉強会~当日資料~
GitHub勉強会~当日資料~Shintaro Mizuno
 
Git Flowを運用するために
Git Flowを運用するためにGit Flowを運用するために
Git Flowを運用するためにShun Tsunoda
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門Takashi Imagire
 
Git社内勉強会資料
Git社内勉強会資料Git社内勉強会資料
Git社内勉強会資料Kenji Takei
 
なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習石橋 啓太
 
GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話Sota Sugiura
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜Taiji Tsuchiya
 
今日から始めるGithub
今日から始めるGithub今日から始めるGithub
今日から始めるGithublion-man
 
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナーHajime Ogushi
 
Git勉強会資料
Git勉強会資料Git勉強会資料
Git勉強会資料Kenji Takei
 
医療データ解析者へ向けた Git・GitHub 入門
医療データ解析者へ向けた Git・GitHub 入門医療データ解析者へ向けた Git・GitHub 入門
医療データ解析者へ向けた Git・GitHub 入門Yui Tomo
 

Similaire à Git @ NNCT programming workshop (20)

Git_GiHub講習会.pdf
Git_GiHub講習会.pdfGit_GiHub講習会.pdf
Git_GiHub講習会.pdf
 
ゆるふわっGit入門
ゆるふわっGit入門ゆるふわっGit入門
ゆるふわっGit入門
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会
 
Githubサービスについて
GithubサービスについてGithubサービスについて
Githubサービスについて
 
GitHub勉強会~当日資料~
GitHub勉強会~当日資料~GitHub勉強会~当日資料~
GitHub勉強会~当日資料~
 
Git Flowを運用するために
Git Flowを運用するためにGit Flowを運用するために
Git Flowを運用するために
 
About git
About gitAbout git
About git
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
Git社内勉強会資料
Git社内勉強会資料Git社内勉強会資料
Git社内勉強会資料
 
なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習なるべく噛み砕いたGit基礎講習
なるべく噛み砕いたGit基礎講習
 
Git&GitHub入門
Git&GitHub入門Git&GitHub入門
Git&GitHub入門
 
GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話
 
Git地図
Git地図Git地図
Git地図
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
 
Git超入門
Git超入門Git超入門
Git超入門
 
Gitの使い方
Gitの使い方Gitの使い方
Gitの使い方
 
今日から始めるGithub
今日から始めるGithub今日から始めるGithub
今日から始めるGithub
 
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
 
Git勉強会資料
Git勉強会資料Git勉強会資料
Git勉強会資料
 
医療データ解析者へ向けた Git・GitHub 入門
医療データ解析者へ向けた Git・GitHub 入門医療データ解析者へ向けた Git・GitHub 入門
医療データ解析者へ向けた Git・GitHub 入門
 

Git @ NNCT programming workshop