SlideShare a Scribd company logo
Git
ノンプログラマでも今日から使える「Git」でバージョン管理
ノンプログラマでも今日から使える「Git」でバージョン管理
執筆中価格 ¥500
ノンプログラマでも今日から使える「Git」でバージョン管理
Gitってなに?
ノンプログラマでも今日から使える「Git」でバージョン管理
5
Gitとは
• バージョン管理システム
• 他に「CVS」や「Subversion」など
• Gitは「分散型」
6
詳しくは後ほど
プログラマーのもの?
ノンプログラマでも今日から使える「Git」でバージョン管理
7
Gitで小説を書く人も
8
チームで使うもの?
ノンプログラマでも今日から使える「Git」でバージョン管理
9
ひとりぼっちでも大丈夫
10
黒い画面を使うの?
ノンプログラマでも今日から使える「Git」でバージョン管理
11
ソフトも揃ってます
12
Gitをはじめよう
ノンプログラマでも今日から使える「Git」でバージョン管理
13
demo
なにが起こったの?
なにが起こった?
• リポジトリーを作る
• ステージングする
• リポジトリーにコミットする
• チェックアウトして元に戻す
16
なにが起こった?
• リポジトリーを作る
• ステージングする
• リポジトリーにコミットする
• チェックアウトして元に戻す
17
全然分からない!
言葉をおぼえよう
ノンプログラマでも今日から使える「Git」でバージョン管理
19
Gitは3階層
20
ここに履歴がたまる
準備場所
作業フォルダー
ワークツリー
インデックス
ローカル
リポジトリー
Gitは3階層
21
ワークツリー
ステージング
コミット
ローカル
リポジトリー
インデックス
Gitは3階層
22
?
ワークツリー
ステージング
コミット
ローカル
リポジトリー
インデックス
demo
ステージングは「箱詰め」
• リポジトリーは「倉庫」
• 倉庫には「箱」単位で詰め込める
• 箱に無造作に詰め込むと、あとが大変
• 目的別に箱を分けましょう
24
分ける基準は?
基本は「タスク」単位
• トップページを追加した
• 画像を変更した
• ナビゲーションにボタンを追加した
26
元に戻すときのことを考える
コミット履歴
27
e1193f8 初期化
ハッシュ(ID)
コミット履歴
28
e1193f8
5a09431
初期化
トップページを追加
コミット履歴
29
e1193f8
5a09431
初期化
トップページを追加
30e367c 画像を変更
コミット履歴
30
e1193f8
5a09431
初期化
トップページを追加
30e367c 画像を変更
420eac9 ボタンを追加
ここでリリース
コミット履歴
31
e1193f8
5a09431
初期化
トップページを追加
30e367c 画像を変更
420eac9 ボタンを追加 v1.0
タグ付け
タグを使う
• 特定のコミットにつけられる名前
• それをヒントに、履歴を辿ったり戻したり
• 英数字でつける。バージョン番号なども可
32
Dropboxなどとの違い
• Dropboxなどのバックアップは

日付単位・ファイル単位
• Gitは、「区切り」を自由に管理
• タグを使って、さらに整理できる
33
単なるバックアップではなく、「歴史」を作る
ブランチを使おう
ノンプログラマでも今日から使える「Git」でバージョン管理
34
ブランチ?(Brunch)
35
Branch = 枝
36
こんな時どうする?
37
 4月に一部リニューアルしたいんだよね
では、テストサーバーを使って作業しましょう
 あ、そういえばリニューアルの前に
 表記を変えて欲しいところがあった
え、もうリニューアル作業はじめちゃいましたよ
 テストサーバーで見せてねー
「ブランチ」で解決!
demo
ブランチを使えば解決!
• 普段使うのは「マスターブランチ」
• そこから、必要に応じて「ブランチ」

に分けていくことができる
• ブランチを取り込んだり、合流したりも
40
いつ、ブランチを作るの?
こんな時は Let’s ブランチ
• リリースまでに時間がかかりそうな作業
• 実験的な作業(あとでなかったことにしたい)
• 全体に大きな影響を与えそうな作業
42
常にブランチを切る人も
増えたブランチはどうなるの?
demo
mergeとrebaseはどう違うの?
merge
46
合流。でも過去はそのまま
rebase
47
合体。ブランチははなかったことに
cherry-pick(いいとこ取り)
48
他のブランチから変更をもらう
使い分け
• rebaseは、ちょっとした変更の時
• mergeは履歴として残しておきたい

大きな変更
• ブランチ同士の変更のやりとりは

cherry-pickで
49
git-flow
50
http://danielkummer.github.io/git-flow-cheatsheet/index.ja_JP.html
git-flow
• Gitを使ったソフトウェア開発モデル
• 専用ツール(コマンドライン)もある
• SourceTreeでも一部サポート
• ブランチ名などの参考に
51
チームで使おう
ノンプログラマでも今日から使える「Git」でバージョン管理
52
Gitは実は4階層
53
ワークツリー
インデックス
ローカル
リポジトリー
Gitは実は4階層
54
ワークツリー
インデックス
ローカル
リポジトリー
リモート
リポジトリー
プッシュ
プル
Gitは実は4階層
55
ワークツリー
インデックス
ローカル
リポジトリー
リモート
リポジトリー
ワークツリー
インデックス
ローカル
リポジトリー
クローン
どこにあるの?
リモートリポジトリーの作り方
• サーバーコンピューターを準備して

Gitをインストール
• Gitホスティングを借りる
• プロジェクト管理サービスなどに

おまけで付属してくることも
57
Gitホスティング
58
GitLab
demo
リモートリポジトリ
• リポジトリをみんなで共有
• 他の人の更新を取り込んだり、

自分の更新をアップしたり
• Webサーバーへ、Gitを通じて

アップロードすることも可能
60
Gitとは
• バージョン管理システム
• 他に「CSV」や「Subversion」など
• Gitは「分散型」
61
Gitとは
• バージョン管理システム
• 他に「CSV」や「Subversion」など
• Gitは「分散型」
62
分散型バージョン管理
• 各個人が、保管場所を所持
• 共有したいブランチやタグを選んでプッシュ
• ロックがかからない
• お互い上書き(コンフリクト)は起こる
63
コンフリクトを解消しよう
ノンプログラマでも今日から使える「Git」でバージョン管理
64
demo
コンフリクトの状況
• 自分が新しい
• 相手が新しい
• お互い新しい
66
手動マージ
67
自分の変更
相手の変更
コマンドラインで使おう
ノンプログラマでも今日から使える「Git」でバージョン管理
68
demo
すべての機能はコマンドでOK
70
コミット履歴なども見られます
71
どっちを使うべき?
両方使おう
• 普段のコミット、

ブランチ作成くらいはコマンドで
• コミット履歴を見たり、

マージやコンフリクトまわりはGUIで
73
コマンドを怖がらず、こだわらず
まとめ
• まずは、SourceTreeをインストール
• 1人で、テストプロジェクトで試す
• 1人で、実戦投入
• チームで利用
74
Git
ノンプログラマでも今日から使える「Git」でバージョン管理

More Related Content

PDF
いつやるの?Git入門
PDF
Gitはじめの一歩
PPTX
猫でも分かるVariational AutoEncoder
PDF
見やすいプレゼン資料の作り方 - リニューアル増量版
PDF
Data × UX - 定量分析と定性分析のシナジーをガチUXデザイナーが語る
PPTX
Counterfaual Machine Learning(CFML)のサーベイ
PDF
機械学習モデルの判断根拠の説明(Ver.2)
PDF
Active Learning 入門
いつやるの?Git入門
Gitはじめの一歩
猫でも分かるVariational AutoEncoder
見やすいプレゼン資料の作り方 - リニューアル増量版
Data × UX - 定量分析と定性分析のシナジーをガチUXデザイナーが語る
Counterfaual Machine Learning(CFML)のサーベイ
機械学習モデルの判断根拠の説明(Ver.2)
Active Learning 入門

What's hot (20)

PDF
はじめてのGit forデザイナー&コーダー
PDF
15分でわかるGit入門
PDF
いつやるの?Git入門 v1.1.0
PDF
デザイナのためのGit入門
PDF
やりなおせる Git 入門
PDF
こわくない Git
PDF
Gitのよく使うコマンド
PDF
ChatGPTは思ったほど賢くない
PDF
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
PDF
はじめようGit
PPTX
GitLab CI/CD パイプライン
PDF
ノンプログラマのGit入門
PDF
DockerとPodmanの比較
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
PDF
君はyarn.lockをコミットしているか?
PDF
View customize pluginを使いこなす
PDF
Dockerからcontainerdへの移行
PDF
できる!並列・並行プログラミング
PDF
Docker道場オンライン#1 Docker基礎概念と用語の理解
PDF
Git 版本控制 (使用教學)
はじめてのGit forデザイナー&コーダー
15分でわかるGit入門
いつやるの?Git入門 v1.1.0
デザイナのためのGit入門
やりなおせる Git 入門
こわくない Git
Gitのよく使うコマンド
ChatGPTは思ったほど賢くない
【Unite 2018 Tokyo】60fpsのその先へ!スマホの物量限界に挑んだSTG「アカとブルー」の開発設計
はじめようGit
GitLab CI/CD パイプライン
ノンプログラマのGit入門
DockerとPodmanの比較
コンテナの作り方「Dockerは裏方で何をしているのか?」
君はyarn.lockをコミットしているか?
View customize pluginを使いこなす
Dockerからcontainerdへの移行
できる!並列・並行プログラミング
Docker道場オンライン#1 Docker基礎概念と用語の理解
Git 版本控制 (使用教學)
Ad

Viewers also liked (8)

PDF
WordCamp Kyoto 2009 LT Slide
PDF
basic operation about git
PDF
Gmail奥義皆伝!
PDF
Gmailで働き方改革
PPTX
Googleツールを使いこなして世界中の仲間と楽しく仕事を進めよう【初心者向け】
PDF
Rbpdf gem library
PDF
情報システム部門のタスク管理とIT全般統制 ~ Excel管理からの脱却 ~ (ITS Redmine #RxTstudy #5)
PDF
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
WordCamp Kyoto 2009 LT Slide
basic operation about git
Gmail奥義皆伝!
Gmailで働き方改革
Googleツールを使いこなして世界中の仲間と楽しく仕事を進めよう【初心者向け】
Rbpdf gem library
情報システム部門のタスク管理とIT全般統制 ~ Excel管理からの脱却 ~ (ITS Redmine #RxTstudy #5)
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Ad

Similar to ノンプログラマでも今日から使える「Git」でバージョン管理 (20)

KEY
一人でもはじめるGitでバージョン管理
PPTX
Introduction git
PDF
git flowを使った開発フロー
PDF
Git 10min
PDF
ゆるふわっGit入門
PPTX
Git演習(1)
PDF
20120125 チーム開発
PDF
20120125 チーム開発
PPTX
超初心者のためのGitマニュアル
PDF
Python for Data Analysis第1回勉強会(+git入門)
PPTX
Git @ NNCT programming workshop
PPTX
私が複数人開発で感じている Git・GitHubのうまみ
PDF
Githubサービスについて
PPTX
2018 07-18 git-hub講座
PPTX
Git & GitHub & kintone でウルトラハッピー!
PDF
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
PDF
20160128 jjug Nightセミナー_Git実践入門
PDF
Wordbench fukuoka
PDF
2015.04.19 WordBench 埼玉 Git & WordPress
PPTX
Git勉強会資料
一人でもはじめるGitでバージョン管理
Introduction git
git flowを使った開発フロー
Git 10min
ゆるふわっGit入門
Git演習(1)
20120125 チーム開発
20120125 チーム開発
超初心者のためのGitマニュアル
Python for Data Analysis第1回勉強会(+git入門)
Git @ NNCT programming workshop
私が複数人開発で感じている Git・GitHubのうまみ
Githubサービスについて
2018 07-18 git-hub講座
Git & GitHub & kintone でウルトラハッピー!
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
20160128 jjug Nightセミナー_Git実践入門
Wordbench fukuoka
2015.04.19 WordBench 埼玉 Git & WordPress
Git勉強会資料

More from H2O Space. Co., Ltd. (8)

PDF
Build Insider OFFLINE vol.01 スマートフォンサイトのこれから ~ レスポンシブ・Webデザインは救世主となり得るか
PDF
優雅に行こう! Coda 2で次世代のコーディングへ
PDF
WordCamp2012 テストサーバーでWordPressを構築しよう
PDF
ちゃんとWeb会議スライド『Coffee script』
PDF
Android Bazaar and Conference 2012 Spring
PDF
H2O Space. HTML Coding Rule.
PDF
ADC meetup Session.02
PDF
WordPressご説明資料
Build Insider OFFLINE vol.01 スマートフォンサイトのこれから ~ レスポンシブ・Webデザインは救世主となり得るか
優雅に行こう! Coda 2で次世代のコーディングへ
WordCamp2012 テストサーバーでWordPressを構築しよう
ちゃんとWeb会議スライド『Coffee script』
Android Bazaar and Conference 2012 Spring
H2O Space. HTML Coding Rule.
ADC meetup Session.02
WordPressご説明資料

ノンプログラマでも今日から使える「Git」でバージョン管理