SlideShare a Scribd company logo
1 of 57
Download to read offline
2019/7/20 Ver.1.0
Hirotaka Ichimura
1
バージョン管理ツール
Gitの使い方
 Gitとは
 SourceTree
 GitHub
 Gitでの作業の流れ
 リポジトリ
 コミット
2
アジェンダ
 origin/master
 .gitignore
 ブランチ
 マージ
 コンフリクト
 フェッチ
自己紹介
3
名前:市村 洋隆
職業:職業訓練校 講師
Web業界歴:16年
マークアップエンジニア
この画像が著作権で怒られないか心配
4
今日の目的
5
00
6
Gitを使った
作業の流れを覚えよう
Gitとは
7
01
8
Gitはバージョン管理ツールの一つ
01 Gitとは
現在のIT系サイトの制作は
複数人で行うことが普通
9
 作業したファイルの別名が山ほどできる
 クライアントからの手戻り指示
 メンバーが遠隔地で作業しているときの
やりとり
今までの開発の問題点
01 Gitとは
10
これら問題を
解決するために生まれたのが
バージョン管理ツール
01 Gitとは
11
AさんのPC BさんのPC
ホスティング
サービス
(リモートリポジトリ)
ローカル
リポジトリ
ローカル
リポジトリ
01 Gitとは
Gitを使った
作業の関係図
12
 PhotoShopなどの大容量のファイル
はNG
 CMSのような小さなファイルの集合
体もNG
Gitを使うときの注意点
01 Gitとは
13
Gitを使うことで
従来より効率的な開発が
期待できます
01 Gitとは
SourceTree
14
02
15
02 SourceTree
Gitを使うにはGitコマンド(命令)を
覚える必要があり
人によっては難しいと感じる
最初はGUIで管理できる
SourceTreeの方が敷居が低い
16
 Atlassianのアカウントを取得
 https://www.atlassian.com/ja/software/sou
rcetreeにアクセス
 自分のOSに合わせたインストーラーをDL
 指示に従いながらインストール
導入方法
02 SourceTree
17
02 SourceTree
 元からGitを使っている人はそれを選択
できる
 Macには最初からGitがインストールさ
れている
補足
18
最初はSourceTreeを使って
バージョン管理をしていこう
02 SourceTree
GitHub
19
03
20
ホスティングサービスの一つ
開発したデータを
置いておく場所
03 GitHub
21
GitHubは非公開の場所を
ユーザ無制限で使える
03 GitHub
プライベートリポジトリを
複数人で使うには招待が必要
22
 https://github.co.jp/でアカウントの作成
 作成したアカウントでGitHubにログイン
 リモートリポジトリの作成
導入方法
03 GitHub
23
GitHubのアカウントも
作っておく必要があります
03 GitHub
Gitでの作業の流れ
24
04
25
Git(SourceTree)を使って
実際に開発作業を行う流れを
ざっくりと説明
04 Gitでの作業の流れ
26
 GitHubにログイン
 リモートリポジトリの作成
 SourcetreeでCloneを選ぶ
 リモートリポジトリのURLを指定
 Clone開始
1.環境構築
04 Gitでの作業の流れ
27
 Cloneした場所を使ってエディタで作業
 SourceTreeでコミット
 ローカルリポジトリからリモートリポジトリへ
プッシュ
 プッシュが成功したら、リモートリポジトリを確認
2.制作作業
04 Gitでの作業の流れ
28
 先ほど同様に環境を構築しておく
 SourceTreeからプルを実行
 プルが成功したら作業開始
 作業が終わったらコミット
 コミット成功したらプッシュ
3.別PC,ユーザの作業
04 Gitでの作業の流れ
29
コミット、プッシュ、プルが
分かるだけで基本の作業は可能
04 Gitでの作業の流れ
リポジトリ
30
05
31
05リポジトリ
ここからはGitを使った作業で
聞き慣れない言葉が出てくるので
これらを説明
32
05リポジトリ
Gitを使ってデータを管理する場所
 ローカルリポジトリ
自分が作業するPCに作るリポジトリ
 リモートリポジトリ
ホスティングサービスにデータを置く場所
リポジトリとは
33
AさんのPC BさんのPC
ホスティング
サービス
(リモートリポジトリ)
ローカル
リポジトリ
ローカル
リポジトリ
05リポジトリ
コミット
34
06
35
 作業した内容をリポジトリに記録するた
めに必要な作業
 コミットすると過去の作業内容がリビ
ジョン(履歴)として残る
06 コミット
コミットとは#1
36
AさんのPC BさんのPC
ホスティング
サービス
(リモートリポジトリ)
ローカル
リポジトリ
ローカル
リポジトリ
06 コミット
37
 コミットするときにはどんな作業を行った
か具体的な文章として記述する
 コミットするためには作業したファイルの
内必要なものをステージに移動する
06 コミット
コミットとは#2
ブランチ
38
07
39
コミットしたリビジョンを
意図的に枝(ブランチ)分かれさせて
管理する方法
07 ブランチ
UIなどデザイン面で複数パターン
を提出するときなどに活躍
40
ブランチした流れはそのまま独立する
ほかの作業と平行して作業することが可能
07 ブランチ
ブランチ
ブランチ
origin/master
41
08
42
リモートリポジトリの場所(URL)の別名
クローン時に勝手に作られる
08 origin/master
origin
ホスティングサービスは、プロジェクトごとに
たくさんのリポジトリが作られるので、それがどれか示
すために必要
43
08 origin/master
master
リモートリポジトリのブランチの名前
ブランチは自分で名前をつけられるが
一番最初の流れ(履歴・リビジョン)には名前がないので
masterが設定される
マージ
44
09
45
09 マージ
ブランチとして分かれた別々の流れを
まとめること
マージ
46
09 マージ
決めきれないレイアウトパターンが
確定したときに
ブランチは不要となるので
マージして一本化する
コンフリクト
47
10
48
別々な人が同じファイルの同じ箇所を
修正したために流れを
まとめることができなくなる状況
10 コンフリクト
競合とか衝突とか
呼ばれる
49
AさんのPC BさんのPC
ホスティング
サービス
(リモートリポジトリ)
ローカル
リポジトリ
ローカル
リポジトリ
10 コンフリクト
プッシュも
プルも不可
50
コンフリクトしたファイルは
その箇所が分かるように
書き換えられるので
エディタからコンフリクト
しないように書き直す
10 コンフリクト
51
書き直す人は
コンフリクトした時点で
作業していた人が行う
10 コンフリクト
修正する方法は
決まっていないので
ルールを決めておくこと
フェッチ
52
11
53
リモートリポジトリから
ただデータを取得するときは
フェッチを使う
11 フェッチ
54
プルはフェッチしたあとの
マージの作業もセットになっている
11 フェッチ
プルとフェッチは
厳密に役割が違うので
作業に合わせて使い分ける
その他
55
Ex
56
 https://git-scm.com/
 https://www.atlassian.com/ja/software/sourcet
ree
 https://proengineer.internous.co.jp/content/colu
mnfeature/6983
 https://github.co.jp/
 https://backlog.com/ja/git-tutorial/
参考
57
以上!!

More Related Content

What's hot

夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2 夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2
智治 長沢
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
Takashi Imagire
 
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
満徳 関
 
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
Koichiro Takashima
 

What's hot (20)

GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
GitHub, the way to simple use. That's it.
GitHub, the way to simple use. That's it.GitHub, the way to simple use. That's it.
GitHub, the way to simple use. That's it.
 
第14回 Redmine.tokyo パネルディスカッション
第14回 Redmine.tokyo パネルディスカッション第14回 Redmine.tokyo パネルディスカッション
第14回 Redmine.tokyo パネルディスカッション
 
私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ私が複数人開発で感じている Git・GitHubのうまみ
私が複数人開発で感じている Git・GitHubのうまみ
 
GoGoMakeDAST
GoGoMakeDASTGoGoMakeDAST
GoGoMakeDAST
 
Yapc2012資料
Yapc2012資料Yapc2012資料
Yapc2012資料
 
夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2 夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2
 
Github of project
Github of projectGithub of project
Github of project
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
国産業務PaaSを担いで稼ぐ方法 ~SIerの生き残る道の1つとなるか? ~
国産業務PaaSを担いで稼ぐ方法 ~SIerの生き残る道の1つとなるか? ~国産業務PaaSを担いで稼ぐ方法 ~SIerの生き残る道の1つとなるか? ~
国産業務PaaSを担いで稼ぐ方法 ~SIerの生き残る道の1つとなるか? ~
 
Gitpractice01
Gitpractice01Gitpractice01
Gitpractice01
 
ノンプログラマのGit入門
ノンプログラマのGit入門ノンプログラマのGit入門
ノンプログラマのGit入門
 
Bot Builder V4 SDK + QnA Maker / LUIS
Bot Builder V4 SDK  + QnA Maker / LUISBot Builder V4 SDK  + QnA Maker / LUIS
Bot Builder V4 SDK + QnA Maker / LUIS
 
ちょっと丁寧にgitを説明する
ちょっと丁寧にgitを説明するちょっと丁寧にgitを説明する
ちょっと丁寧にgitを説明する
 
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDevelop...
 
【Unite Tokyo 2018】基調講演
【Unite Tokyo 2018】基調講演【Unite Tokyo 2018】基調講演
【Unite Tokyo 2018】基調講演
 
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
 
会社に Github導入した話
会社に Github導入した話会社に Github導入した話
会社に Github導入した話
 
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Developmentアジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development
アジャイルナイトセミナー_2012年10月18日_Social Game x Agile Development
 

Similar to Gitの使い方

第8回 福岡西区勉強会
第8回 福岡西区勉強会第8回 福岡西区勉強会
第8回 福岡西区勉強会
Shinya Kinoshita
 
Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日
Tadahiro Ishisaka
 
Git extensions ws外部公開用
Git extensions ws外部公開用Git extensions ws外部公開用
Git extensions ws外部公開用
CROOZ, inc.
 

Similar to Gitの使い方 (20)

Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)
 
RedmineとGitHubのうまい関係
RedmineとGitHubのうまい関係RedmineとGitHubのうまい関係
RedmineとGitHubのうまい関係
 
第8回 福岡西区勉強会
第8回 福岡西区勉強会第8回 福岡西区勉強会
第8回 福岡西区勉強会
 
Git @ NNCT programming workshop
Git @ NNCT programming workshopGit @ NNCT programming workshop
Git @ NNCT programming workshop
 
01.app
01.app01.app
01.app
 
Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日
 
Githubサービスについて
GithubサービスについてGithubサービスについて
Githubサービスについて
 
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
 
Git_GiHub講習会.pdf
Git_GiHub講習会.pdfGit_GiHub講習会.pdf
Git_GiHub講習会.pdf
 
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
「Gitが、おもしろいほどわかる基本の使い方33」 出版記念セミナー
 
Git extensions ws外部公開用
Git extensions ws外部公開用Git extensions ws外部公開用
Git extensions ws外部公開用
 
オールフェスタ Git勉強会資料 (public)
オールフェスタ Git勉強会資料 (public)オールフェスタ Git勉強会資料 (public)
オールフェスタ Git勉強会資料 (public)
 
今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編
 
GitHubアカウントの作成
GitHubアカウントの作成GitHubアカウントの作成
GitHubアカウントの作成
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティス
 
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
 
Git講習会
Git講習会Git講習会
Git講習会
 
GitHub Enterpriseの導入事例と実践GitHub Actions
GitHub Enterpriseの導入事例と実践GitHub ActionsGitHub Enterpriseの導入事例と実践GitHub Actions
GitHub Enterpriseの導入事例と実践GitHub Actions
 
バージョン管理
バージョン管理バージョン管理
バージョン管理
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会
 

More from MarlboroLand (12)

web開発環境
web開発環境web開発環境
web開発環境
 
Webの勉強会#14
Webの勉強会#14Webの勉強会#14
Webの勉強会#14
 
Webの勉強会#12
Webの勉強会#12Webの勉強会#12
Webの勉強会#12
 
Webの勉強会#11
Webの勉強会#11Webの勉強会#11
Webの勉強会#11
 
Webの勉強会#10
Webの勉強会#10Webの勉強会#10
Webの勉強会#10
 
Webの勉強会#9
Webの勉強会#9Webの勉強会#9
Webの勉強会#9
 
Webの勉強会#8
Webの勉強会#8Webの勉強会#8
Webの勉強会#8
 
Webの勉強会#6
Webの勉強会#6Webの勉強会#6
Webの勉強会#6
 
Webの勉強会#5
Webの勉強会#5Webの勉強会#5
Webの勉強会#5
 
初心者向け、プログラムのお話
初心者向け、プログラムのお話初心者向け、プログラムのお話
初心者向け、プログラムのお話
 
Webサイト制作の環境構築(for Windows)
Webサイト制作の環境構築(for Windows)Webサイト制作の環境構築(for Windows)
Webサイト制作の環境構築(for Windows)
 
CSS設計のお勉強
CSS設計のお勉強CSS設計のお勉強
CSS設計のお勉強
 

Recently uploaded

Recently uploaded (12)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

Gitの使い方