Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Visual Studio 2015 での Git 利用
2015年10月26日(月) 14:35-15:25
鉄人から学ぶ! Visual Studio 2015 によるテスト・リファクタリング
Microsoft MVP for Visua...
本日の概要
本日のセッションの概要について確認していきます。
Copyright © @fullvirtue. All rights reserved. 2
本日の概要(1/1)
本セッションについて(1/1)
 概要
– 「Visual Studio 2015でgitはどう使うの?」「gitって何?」
分散型バージョン管理システム(git)における、
プルリクエスト主体のアジャイルなチケット駆動...
おことわり(1/3)
今回の資料について(1/3)
 今回の資料は、以下を参考にしています。
私自身のオリジナルはほとんどありませんので、
ご了承ください。
– デザイナのためのGit入門
» http://www.slideshare.ne...
おことわり(2/3)
今回の資料について(2/3)
 今回の資料は、以下を参考にしています。
私自身のオリジナルはほとんどありませんので、
ご了承ください。
– A successful Git branching model
» [Eng]...
おことわり(3/3)
今回の資料について(3/3)
 今回の資料は、以下を参考にしています。
私自身のオリジナルはほとんどありませんので、
ご了承ください。
– SourceTreeで始めよう! Gitへの乗り換え指南
» http://ww...
本日お話すること(1/1)
アジェンダ(1/1)
 本日の概要
 Visual Studio 2015 + Git で開発を始めるには
 Git の考え方とポイント
 まとめ
Copyright © POStudy (プロダクトオーナー...
本日お話すること(1/1)
アジェンダ(1/1)
 本日の概要
 Visual Studio 2015 + Git で開発を始めるには
 Git の考え方とポイント
 まとめ
Copyright © POStudy (プロダクトオーナー...
Visual Studio 2015 + Git で
開発を始めるには
手順を交えてご紹介いたします。
・ Visual Studio 2015 + Git + Visual Studio Online
Copyright © fullvirt...
Visual Studio 2015 + Git で開発を始めるには
一番最初に考えること
 Git リポジトリの管理サーバーをどこにするか
 候補1: Visual Studio Online
– http://visualstudioo...
Visual Studio 2015 + Git で開発を始めるには
一番最初に考えること
 Git リポジトリの管理サーバーをどこにするか
 候補1: Visual Studio Online
– http://visualstudioo...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online の利用を開始
 Visual Studio Online へアクセスして利用を開始
– http://visualstudioon...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online 上でチームプロジェクトを作成
Copyright © fullvirtue. All rights reserved. 13
TFS...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online 上にチームプロジェクトが作成
Copyright © fullvirtue. All rights reserved. 14
チーム...
Visual Studio 2015 + Git で開発を始めるには
Home 画面に移動
Copyright © fullvirtue. All rights reserved. 15
Home をクリック
Visual Studio 2015 + Git で開発を始めるには
Home 画面に移動
Copyright © fullvirtue. All rights reserved. 16
× をクリック
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 に関連づけ
Copyright © fullvirtue. All rights reserved. 17
Open in Visual...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 に関連づけ
Copyright © fullvirtue. All rights reserved. 18
アプリケーションの移動 をク...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 19
緑色のアイ...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 20
Visua...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 21
接続 をク...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 22
チームプロ...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 23
このリポジ...
Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 24
複製 をク...
Visual Studio 2015 + Git で開発を始めるには
チームプロジェクト上で開発を開始
Copyright © fullvirtue. All rights reserved. 25
これですべての準備が完了しました!
あとは開...
本日お話すること(1/1)
アジェンダ(1/1)
 本日の概要
 Visual Studio 2015 + Git で開発を始めるには
 Git の考え方とポイント
 まとめ
Copyright © POStudy (プロダクトオーナー...
Git の考え方とポイント
Gitの考え方とポイントについてご紹介いたします。
Copyright © fullvirtue. All rights reserved. 27
Git の考え方とポイント
よくあるバージョン管理の例(1/7)
 ファイル名で管理
Copyright © fullvirtue. All rights reserved. 28
デザイナのためのGit入門 http://www.slide...
Git の考え方とポイント
よくあるバージョン管理の例(2/7)
 ファイル名で管理
Copyright © fullvirtue. All rights reserved. 29
デザイナのためのGit入門 http://www.slide...
Git の考え方とポイント
よくあるバージョン管理の例(3/7)
 共有フォルダで管理
Copyright © fullvirtue. All rights reserved. 30
デザイナのためのGit入門 http://www.slid...
Git の考え方とポイント
よくあるバージョン管理の例(4/7)
 共有フォルダで管理
Copyright © fullvirtue. All rights reserved. 31
デザイナのためのGit入門 http://www.slid...
Git の考え方とポイント
よくあるバージョン管理の例(5/7)
 共有フォルダで管理
Copyright © fullvirtue. All rights reserved. 32
デザイナのためのGit入門 http://www.slid...
Git の考え方とポイント
よくあるバージョン管理の例(6/7)
 共有フォルダで管理
Copyright © fullvirtue. All rights reserved. 33
デザイナのためのGit入門 http://www.slid...
Git の考え方とポイント
よくあるバージョン管理の例(7/7)
 共有フォルダで管理
Copyright © fullvirtue. All rights reserved. 34
デザイナのためのGit入門 http://www.slid...
Git の考え方とポイント
バージョン管理システムとは(1/1)
 ファイルに対して
「誰が」「いつ」「何を変更したか」
というような情報を記録
 過去のある時点の状態を復元したり
変更内容の差分を表示できるようにするシステム
Copyri...
Git の考え方とポイント
バージョン管理システムを使うと(1/1)
 すぐ前の状態に戻せる
 複数人で同じファイルを更新しても大丈夫
 変更履歴が観れる
 リリース管理も簡単
Copyright © fullvirtue. All r...
Git の考え方とポイント
なぜ開発の現場でバージョン管理を使うのか(1/1)
1. アジリティを高める
» もし開発中にソフトウェアにバグを埋め込んでしまっても、
問題の発生する以前の状態へ簡単に戻せる
2. 素早い開発が可能に
» ある環境...
Git の考え方とポイント
バージョン管理システムの方式(1/9)
 『集中管理方式』
– プロジェクトの単一の “中心” コピーがどこかに存在
» たいていはサーバー上であることが多い
– プログラマーはこの中心コピーに変更を “コミット”...
Git の考え方とポイント
バージョン管理システムの方式(2/9)
 『集中管理方式』
 『分散管理方式』
– プロジェクトのファイルの全バージョンを保管するための
中央サーバーを必要としない
– 各開発者はレポジトリのコピーを “クローン...
Git の考え方とポイント
バージョン管理システムの方式(3/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 40
デザイナのためのGit入門 http...
Git の考え方とポイント
バージョン管理システムの方式(4/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 41
編集中 編集不可
編集不可編集不可
...
Git の考え方とポイント
バージョン管理システムの方式(5/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 42
サーバー上の
リポジトリ
ローカル
...
Git の考え方とポイント
バージョン管理システムの方式(6/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 43
サーバー上の
リポジトリ
チェックア...
Git の考え方とポイント
バージョン管理システムの方式(7/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 44
サーバー上の
リポジトリ
チェックア...
Git の考え方とポイント
バージョン管理システムの方式(8/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 45
サーバー上の
リポジトリ
チェックア...
Git の考え方とポイント
バージョン管理システムの方式(9/9)
 『集中管理方式』
 『分散管理方式』
Copyright © fullvirtue. All rights reserved. 46
サーバー上の
リポジトリ
チェックア...
Git の考え方とポイント
分散管理方式のメリット(1/2)
 手軽にコミットできる
 オフラインでもコミット出来る
 コミットが増えると履歴が増える
 履歴が増えると戻すのが簡単
Copyright © fullvirtue. All...
Git の考え方とポイント
分散管理方式のメリット(2/2)
 ブランチ・マージが便利
 別バージョンを作るのが簡単
 別バージョンをマージするのが簡単
Copyright © fullvirtue. All rights reserve...
Git の考え方とポイント
何をバージョン管理するのか(1/1)
 ある時点のソフトウェア・環境を構築するために必要なものすべて
– ソフトウェアのソースコード
– ビルドスクリプト
– データベースのスキーマ定義、マイグレーションの SQL...
Git の考え方とポイント
何をバージョン管理してはいけないのか(1/1)
 バージョン管理する必要がない、共有してはいけないファイル
– ソースコードをコンパイルしてできたバイナリファイル
– 秘密鍵ファイルなどの他人に見せてはいけないもの...
Git の考え方とポイント
Gitが不得意なこと(1/1)
 バイナリファイルの管理が苦手
– 遅くなる
– 差分が取れない
Copyright © fullvirtue. All rights reserved. 51
デザイナのためのGi...
Git の考え方とポイント
[参考]Gitで大容量バイナリファイルを扱いたい場合 (1/1)
 Git Large File Storage(Git-LFS)
– Gitは、デフォルトでは、バイナリ資源のすべてのバージョンを圧縮
して保存しよ...
Git の考え方とポイント
ブランチ・タグを中心としたソフトウェア開発(1/2)
 ブランチとは
– 履歴の流れを分岐して記録していくためのもの
– 分岐したブランチは他のブランチの影響を受けない
– 同じリポジトリ中で複数の変更を同時に進め...
Git の考え方とポイント
ブランチ・タグを中心としたソフトウェア開発(2/2)
Copyright © fullvirtue. All rights reserved. 54
SourceTreeで始めよう! Gitへの乗り換え指南 http...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(1/7)
 5種類のブランチを軸に構成
1. master
2. develop
3. feature
4. release
5. hotfix
Copyright © ful...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(2/7)
Copyright © fullvirtue. All rights reserved. 56
A successful Git branching model htt...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(3/7)
Copyright © fullvirtue. All rights reserved. 57
A successful Git branching model htt...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(4/7)
Copyright © fullvirtue. All rights reserved. 58
A successful Git branching model htt...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(5/7)
Copyright © fullvirtue. All rights reserved. 59
A successful Git branching model htt...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(6/7)
Copyright © fullvirtue. All rights reserved. 60
ブランチがmasterに
収束している例
複数の開発が
並行で進んだ例
...
Git の考え方とポイント
ブランチを中心としたソフトウェア開発(7/7)
 ブランチ名に / を付けると階層構造になる
1. master
2. develop
1. develop/issue01
2. develop/issue02
3...
Git の考え方とポイント
プルリクエストのススメ(1/2)
 「プッシュ」と「プルリクエスト」の違い
– プッシュ(push)
» 誰からもレビューされていないソースコードを、
開発者の判断で、全員に影響があるブランチに反映
– プルリクエ...
Git の考え方とポイント
プルリクエストのススメ(2/2)
Copyright © fullvirtue. All rights reserved. 63
http://www.casleyconsulting.co.jp/blog-engi...
本日お話すること(1/1)
アジェンダ(1/1)
 本日の概要
 Visual Studio 2015 + Git で開発を始めるには
 Git の考え方とポイント
 まとめ
Copyright © POStudy (プロダクトオーナー...
まとめ
Copyright © fullvirtue. All rights reserved. 65
Git の考え方とポイント
バージョン管理システムの方式(2/9)
 『集中管理方式』
 『分散管理方式』
– プロジェクトのファイルの全バージョンを保管するための
中央サーバーを必要としない
– 各開発者はレポジトリのコピーを “クローン...
Git の考え方とポイント
何をバージョン管理するのか(1/1)
 ある時点のソフトウェア・環境を構築するために必要なものすべて
– ソフトウェアのソースコード
– ビルドスクリプト
– データベースのスキーマ定義、マイグレーションの SQL...
ご静聴ありがとうございました!
Copyright © @fullvirtue. All rights reserved. 68
グロースエクスパートナーズ株式会社 ITアーキテクト
エンタープライズ向けのIT業界にて、企画から開発運用および新...
Upcoming SlideShare
Loading in …5
×

Visual Studio 2015 での Git 利用 - 鉄人から学ぶ! Visual Studio 2015 によるテスト・リファクタリングセミナー #tfsug

https://docs.com/kaorun55/2872/20151026

Visual Studio 2015 での Git 利用 - 鉄人から学ぶ! Visual Studio 2015 によるテスト・リファクタリングセミナー #tfsug

  1. 1. Visual Studio 2015 での Git 利用 2015年10月26日(月) 14:35-15:25 鉄人から学ぶ! Visual Studio 2015 によるテスト・リファクタリング Microsoft MVP for Visual Studio and Development Technologies 関 満徳@fullvirtue Copyright © fullvirtue. All rights reserved.
  2. 2. 本日の概要 本日のセッションの概要について確認していきます。 Copyright © @fullvirtue. All rights reserved. 2
  3. 3. 本日の概要(1/1) 本セッションについて(1/1)  概要 – 「Visual Studio 2015でgitはどう使うの?」「gitって何?」 分散型バージョン管理システム(git)における、 プルリクエスト主体のアジャイルなチケット駆動開発について、 実案件での経験を踏まえてお話します。  対象者 – Visual Studio 2015 での Git 利用について知りたい方 – 分散型バージョン管理システム(git)について知りたい方 Copyright © fullvirtue. All rights reserved. 3 Visual Studio 2015 での Git 利用
  4. 4. おことわり(1/3) 今回の資料について(1/3)  今回の資料は、以下を参考にしています。 私自身のオリジナルはほとんどありませんので、 ご了承ください。 – デザイナのためのGit入門 » http://www.slideshare.net/dsuket/git-16343460 – サルでもわかるGit入門 » http://www.backlog.jp/git-guide/ – 知らないと現場で困るバージョン管理システムの基礎知識 » http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html – バージョン管理とは : 集中型 vs. DVCS » http://japan.blogs.atlassian.com/2012/11/version-control- centralized-dvcs/ Copyright © fullvirtue. All rights reserved. 4
  5. 5. おことわり(2/3) 今回の資料について(2/3)  今回の資料は、以下を参考にしています。 私自身のオリジナルはほとんどありませんので、 ご了承ください。 – A successful Git branching model » [Eng]http://nvie.com/posts/a-successful-git-branching-model/ » [日本語訳] http://keijinsonyaban.blogspot.jp/2010/10/successful- git-branching-model.html – キャスレーの社内開発で利用するgitのブランチモデルとかPull Requestの簡単な解説とか » http://www.casleyconsulting.co.jp/blog-engineer/git/キャスレーの社 内開発で利用するgitのブランチモ/ Copyright © fullvirtue. All rights reserved. 5
  6. 6. おことわり(3/3) 今回の資料について(3/3)  今回の資料は、以下を参考にしています。 私自身のオリジナルはほとんどありませんので、 ご了承ください。 – SourceTreeで始めよう! Gitへの乗り換え指南 » http://www.slideshare.net/kekyo/sourcetree-git – Announcing Git-LFS on all VSO Git repos » http://blogs.msdn.com/b/visualstudioalm/archive/2015/10/01/ann ouncing-git-lfs-on-all-vso-git-repos.aspx – Gitを大容量バイナリファイルへと拡張するGit Large File Storage » http://www.infoq.com/jp/news/2015/04/github-large-file-storage – Visual Studio OnlineでGit LFSを使ってみた » http://opcdiary.net/?p=30465 Copyright © fullvirtue. All rights reserved. 6
  7. 7. 本日お話すること(1/1) アジェンダ(1/1)  本日の概要  Visual Studio 2015 + Git で開発を始めるには  Git の考え方とポイント  まとめ Copyright © POStudy (プロダクトオーナーシップ勉強会). All rights reserved. 7
  8. 8. 本日お話すること(1/1) アジェンダ(1/1)  本日の概要  Visual Studio 2015 + Git で開発を始めるには  Git の考え方とポイント  まとめ Copyright © POStudy (プロダクトオーナーシップ勉強会). All rights reserved. 8
  9. 9. Visual Studio 2015 + Git で 開発を始めるには 手順を交えてご紹介いたします。 ・ Visual Studio 2015 + Git + Visual Studio Online Copyright © fullvirtue. All rights reserved. 9
  10. 10. Visual Studio 2015 + Git で開発を始めるには 一番最初に考えること  Git リポジトリの管理サーバーをどこにするか  候補1: Visual Studio Online – http://visualstudioonline.com/  候補2: GitHub – https://github.com/  候補3: Bitbucket – https://bitbucket.org/ Copyright © fullvirtue. All rights reserved. 10
  11. 11. Visual Studio 2015 + Git で開発を始めるには 一番最初に考えること  Git リポジトリの管理サーバーをどこにするか  候補1: Visual Studio Online – http://visualstudioonline.com/  候補2: GitHub – https://github.com/  候補3: Bitbucket – https://bitbucket.org/ Copyright © fullvirtue. All rights reserved. 11 今日はこちらの 手順を紹介します!
  12. 12. Visual Studio 2015 + Git で開発を始めるには Visual Studio Online の利用を開始  Visual Studio Online へアクセスして利用を開始 – http://visualstudioonline.com/ Copyright © fullvirtue. All rights reserved. 12
  13. 13. Visual Studio 2015 + Git で開発を始めるには Visual Studio Online 上でチームプロジェクトを作成 Copyright © fullvirtue. All rights reserved. 13 TFSUG1026Demo Scrum Git チェック
  14. 14. Visual Studio 2015 + Git で開発を始めるには Visual Studio Online 上にチームプロジェクトが作成 Copyright © fullvirtue. All rights reserved. 14 チームプロジェクトが作成されたことを確認
  15. 15. Visual Studio 2015 + Git で開発を始めるには Home 画面に移動 Copyright © fullvirtue. All rights reserved. 15 Home をクリック
  16. 16. Visual Studio 2015 + Git で開発を始めるには Home 画面に移動 Copyright © fullvirtue. All rights reserved. 16 × をクリック
  17. 17. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 に関連づけ Copyright © fullvirtue. All rights reserved. 17 Open in Visual Studio をクリック
  18. 18. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 に関連づけ Copyright © fullvirtue. All rights reserved. 18 アプリケーションの移動 をクリック
  19. 19. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 19 緑色のアイコン(接続の管理)をクリック
  20. 20. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 20 Visual Studio Online の 接続 をクリック
  21. 21. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 21 接続 をクリック チームプロジェクトに チェックをつける
  22. 22. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 22 チームプロジェクトをダブルクリック
  23. 23. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 23 このリポジトリを複製 をクリック ※GitでいうCloneの操作と同じです サーバー上にあるソースコード群を 自分のパソコン上にコピーします
  24. 24. Visual Studio 2015 + Git で開発を始めるには Visual Studio 2015 からチームプロジェクトを開く Copyright © fullvirtue. All rights reserved. 24 複製 をクリック
  25. 25. Visual Studio 2015 + Git で開発を始めるには チームプロジェクト上で開発を開始 Copyright © fullvirtue. All rights reserved. 25 これですべての準備が完了しました! あとは開発を始めるだけです! ソリューションの「新規作成」をクリック
  26. 26. 本日お話すること(1/1) アジェンダ(1/1)  本日の概要  Visual Studio 2015 + Git で開発を始めるには  Git の考え方とポイント  まとめ Copyright © POStudy (プロダクトオーナーシップ勉強会). All rights reserved. 26
  27. 27. Git の考え方とポイント Gitの考え方とポイントについてご紹介いたします。 Copyright © fullvirtue. All rights reserved. 27
  28. 28. Git の考え方とポイント よくあるバージョン管理の例(1/7)  ファイル名で管理 Copyright © fullvirtue. All rights reserved. 28 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  29. 29. Git の考え方とポイント よくあるバージョン管理の例(2/7)  ファイル名で管理 Copyright © fullvirtue. All rights reserved. 29 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 どれが最新?
  30. 30. Git の考え方とポイント よくあるバージョン管理の例(3/7)  共有フォルダで管理 Copyright © fullvirtue. All rights reserved. 30 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 共有フォルダ index.html
  31. 31. Git の考え方とポイント よくあるバージョン管理の例(4/7)  共有フォルダで管理 Copyright © fullvirtue. All rights reserved. 31 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 共有フォルダ index.html 更新
  32. 32. Git の考え方とポイント よくあるバージョン管理の例(5/7)  共有フォルダで管理 Copyright © fullvirtue. All rights reserved. 32 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 共有フォルダ index.html 更新 更新
  33. 33. Git の考え方とポイント よくあるバージョン管理の例(6/7)  共有フォルダで管理 Copyright © fullvirtue. All rights reserved. 33 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 共有フォルダ index.html 更新 更新 衝突
  34. 34. Git の考え方とポイント よくあるバージョン管理の例(7/7)  共有フォルダで管理 Copyright © fullvirtue. All rights reserved. 34 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 あれ、上書き しちゃった… 共有フォルダ index.html 更新 更新 衝突
  35. 35. Git の考え方とポイント バージョン管理システムとは(1/1)  ファイルに対して 「誰が」「いつ」「何を変更したか」 というような情報を記録  過去のある時点の状態を復元したり 変更内容の差分を表示できるようにするシステム Copyright © fullvirtue. All rights reserved. 35 知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html
  36. 36. Git の考え方とポイント バージョン管理システムを使うと(1/1)  すぐ前の状態に戻せる  複数人で同じファイルを更新しても大丈夫  変更履歴が観れる  リリース管理も簡単 Copyright © fullvirtue. All rights reserved. 36 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  37. 37. Git の考え方とポイント なぜ開発の現場でバージョン管理を使うのか(1/1) 1. アジリティを高める » もし開発中にソフトウェアにバグを埋め込んでしまっても、 問題の発生する以前の状態へ簡単に戻せる 2. 素早い開発が可能に » ある環境でバグなどの問題が発生した場合には、 過去にさかのぼって変更の差分を確認することで原因を分析したり、 別に同じ環境を作って同じ問題が再現するかどうか調査できる » ソフトウェアへの影響が大きな“変更”や試験的な機能の追加を 安心して行えるので、結果として素早い開発が可能になる 3. 余計な情報でコードが肥大しない » 変更内容はバージョン管理システムに記録されるので、変更前の内容を コメントアウトしてコード中に残すようなことをする必要はない Copyright © fullvirtue. All rights reserved. 37 知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html
  38. 38. Git の考え方とポイント バージョン管理システムの方式(1/9)  『集中管理方式』 – プロジェクトの単一の “中心” コピーがどこかに存在 » たいていはサーバー上であることが多い – プログラマーはこの中心コピーに変更を “コミット” » 単純に中央システムにその変更を記録することを意味 – 代表的な集中型バージョン管理システム » TFVC(Team Foundation Version Control) ←TFS/VSOサポート » CVS(Concurrent Versions System) » SVN(Subversion)  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 38 バージョン管理とは : 集中型 vs. DVCS http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/
  39. 39. Git の考え方とポイント バージョン管理システムの方式(2/9)  『集中管理方式』  『分散管理方式』 – プロジェクトのファイルの全バージョンを保管するための 中央サーバーを必要としない – 各開発者はレポジトリのコピーを “クローン” し、 自身のハード ドライブ上にそのプロジェクトの 完全な 履歴を持つ – コミット時、差分の保存ではなく、ファイル全体をそのまま圧縮保存 – 代表的な分散型バージョン管理システム » Git ←TFS/VSOサポート » Mercurial Copyright © fullvirtue. All rights reserved. 39 バージョン管理とは : 集中型 vs. DVCS http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/
  40. 40. Git の考え方とポイント バージョン管理システムの方式(3/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 40 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  41. 41. Git の考え方とポイント バージョン管理システムの方式(4/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 41 編集中 編集不可 編集不可編集不可 編集中 編集中 編集中編集中 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  42. 42. Git の考え方とポイント バージョン管理システムの方式(5/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 42 サーバー上の リポジトリ ローカル ファイルの編集 リモート リポジトリ ローカル ファイルの編集 ローカル リポジトリ デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  43. 43. Git の考え方とポイント バージョン管理システムの方式(6/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 43 サーバー上の リポジトリ チェックアウト & ファイルロック ローカル ファイルの編集 リモート リポジトリ ローカル ファイルの編集 ローカル リポジトリ デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  44. 44. Git の考え方とポイント バージョン管理システムの方式(7/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 44 サーバー上の リポジトリ チェックアウト & ファイルロック コミット & ファイルロック解除ローカル ファイルの編集 リモート リポジトリ ローカル ファイルの編集 ローカル リポジトリ デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  45. 45. Git の考え方とポイント バージョン管理システムの方式(8/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 45 サーバー上の リポジトリ チェックアウト & ファイルロック コミット & ファイルロック解除ローカル ファイルの編集 リモート リポジトリ ブランチ切替 ローカル ファイルの編集 ローカル リポジトリ クローン or プル デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  46. 46. Git の考え方とポイント バージョン管理システムの方式(9/9)  『集中管理方式』  『分散管理方式』 Copyright © fullvirtue. All rights reserved. 46 サーバー上の リポジトリ チェックアウト & ファイルロック コミット & ファイルロック解除ローカル ファイルの編集 リモート リポジトリ ブランチ切替 ローカル ファイルの編集 ローカル リポジトリ マージ or コミット プルリクエスト or プッシュ デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460 クローン or プル
  47. 47. Git の考え方とポイント 分散管理方式のメリット(1/2)  手軽にコミットできる  オフラインでもコミット出来る  コミットが増えると履歴が増える  履歴が増えると戻すのが簡単 Copyright © fullvirtue. All rights reserved. 47 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  48. 48. Git の考え方とポイント 分散管理方式のメリット(2/2)  ブランチ・マージが便利  別バージョンを作るのが簡単  別バージョンをマージするのが簡単 Copyright © fullvirtue. All rights reserved. 48 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  49. 49. Git の考え方とポイント 何をバージョン管理するのか(1/1)  ある時点のソフトウェア・環境を構築するために必要なものすべて – ソフトウェアのソースコード – ビルドスクリプト – データベースのスキーマ定義、マイグレーションの SQL、初期データ – 環境構築用の設定ファイル・スクリプト Copyright © fullvirtue. All rights reserved. 49 知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html
  50. 50. Git の考え方とポイント 何をバージョン管理してはいけないのか(1/1)  バージョン管理する必要がない、共有してはいけないファイル – ソースコードをコンパイルしてできたバイナリファイル – 秘密鍵ファイルなどの他人に見せてはいけないもの Copyright © fullvirtue. All rights reserved. 50 知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html
  51. 51. Git の考え方とポイント Gitが不得意なこと(1/1)  バイナリファイルの管理が苦手 – 遅くなる – 差分が取れない Copyright © fullvirtue. All rights reserved. 51 デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
  52. 52. Git の考え方とポイント [参考]Gitで大容量バイナリファイルを扱いたい場合 (1/1)  Git Large File Storage(Git-LFS) – Gitは、デフォルトでは、バイナリ資源のすべてのバージョンを圧縮 して保存しようとする » 数が多い場合、これが最良な手段でないことは明らか – Gitワークフロー内での大容量のバイナリファイル組込みの改善を目的 » オーディオサンプル » データセット » グラフィック » ビデオなど – GitリポジトリをClone後、git-lfsの各種コマンドを使って利用開始 » 参考) http://opcdiary.net/?p=30465 Copyright © fullvirtue. All rights reserved. 52 Gitを大容量バイナリファイルへと拡張するGit Large File http://www.infoq.com/jp/news/2015/04/github-large-file-storage
  53. 53. Git の考え方とポイント ブランチ・タグを中心としたソフトウェア開発(1/2)  ブランチとは – 履歴の流れを分岐して記録していくためのもの – 分岐したブランチは他のブランチの影響を受けない – 同じリポジトリ中で複数の変更を同時に進めていくことができる  タグとは – 履歴のある時点の情報を記録していくためのもの – 他のタグの影響を受けない Copyright © fullvirtue. All rights reserved. 53 サルでもわかるGit入門 http://www.backlog.jp/git-guide/stepup/stepup1_1.html
  54. 54. Git の考え方とポイント ブランチ・タグを中心としたソフトウェア開発(2/2) Copyright © fullvirtue. All rights reserved. 54 SourceTreeで始めよう! Gitへの乗り換え指南 http://www.slideshare.net/kekyo/sourcetree-git • Gitのブランチは「動かせる目印」 • Gitのタグは「動かせない目印」
  55. 55. Git の考え方とポイント ブランチを中心としたソフトウェア開発(1/7)  5種類のブランチを軸に構成 1. master 2. develop 3. feature 4. release 5. hotfix Copyright © fullvirtue. All rights reserved. 55 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/
  56. 56. Git の考え方とポイント ブランチを中心としたソフトウェア開発(2/7) Copyright © fullvirtue. All rights reserved. 56 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/ masterhotfixreleasedevelopfeature
  57. 57. Git の考え方とポイント ブランチを中心としたソフトウェア開発(3/7) Copyright © fullvirtue. All rights reserved. 57 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/ masterhotfixreleasedevelopfeature 本番環境の 不具合対応 不具合対応 を開発環境 にも反映 不具合対応内容を 本番環境に反映 本番リリース 時にタグを付与
  58. 58. Git の考え方とポイント ブランチを中心としたソフトウェア開発(4/7) Copyright © fullvirtue. All rights reserved. 58 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/ masterhotfixreleasedevelopfeature リリース前確認 で不具合発見し たので対応 不具合対応を 開発環境にも反 映 リリース内容を 本番環境に反映 本番リリース 時にタグを付与
  59. 59. Git の考え方とポイント ブランチを中心としたソフトウェア開発(5/7) Copyright © fullvirtue. All rights reserved. 59 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/ masterhotfixreleasedevelopfeature 開発環境に反映 Featureブランチ を新たに作成
  60. 60. Git の考え方とポイント ブランチを中心としたソフトウェア開発(6/7) Copyright © fullvirtue. All rights reserved. 60 ブランチがmasterに 収束している例 複数の開発が 並行で進んだ例 順番に開発を 進めた例
  61. 61. Git の考え方とポイント ブランチを中心としたソフトウェア開発(7/7)  ブランチ名に / を付けると階層構造になる 1. master 2. develop 1. develop/issue01 2. develop/issue02 3. ・・・ 3. feature 4. release 1. release/20150402 2. ・・・ 5. hotfix Copyright © fullvirtue. All rights reserved. 61 A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/ 開発用ブランチをまとめた例 リリース用ブランチをまとめた例
  62. 62. Git の考え方とポイント プルリクエストのススメ(1/2)  「プッシュ」と「プルリクエスト」の違い – プッシュ(push) » 誰からもレビューされていないソースコードを、 開発者の判断で、全員に影響があるブランチに反映 – プルリクエスト(pull request) » 誰かしら変更内容を確認したソースコードを、 権限のある役割の方の判断で、全員に影響があるブランチに反映 Copyright © fullvirtue. All rights reserved. 62
  63. 63. Git の考え方とポイント プルリクエストのススメ(2/2) Copyright © fullvirtue. All rights reserved. 63 http://www.casleyconsulting.co.jp/blog-engineer/git/キャスレーの社内開発で利用するgitのブランチモ/
  64. 64. 本日お話すること(1/1) アジェンダ(1/1)  本日の概要  Visual Studio 2015 + Git で開発を始めるには  Git の考え方とポイント  まとめ Copyright © POStudy (プロダクトオーナーシップ勉強会). All rights reserved. 64
  65. 65. まとめ Copyright © fullvirtue. All rights reserved. 65
  66. 66. Git の考え方とポイント バージョン管理システムの方式(2/9)  『集中管理方式』  『分散管理方式』 – プロジェクトのファイルの全バージョンを保管するための 中央サーバーを必要としない – 各開発者はレポジトリのコピーを “クローン” し、 自身のハード ドライブ上にそのプロジェクトの 完全な 履歴を持つ – コミット時、差分の保存ではなく、ファイル全体をそのまま圧縮保存 – 代表的な分散型バージョン管理システム » Git ←TFS/VSOサポート » Mercurial Copyright © fullvirtue. All rights reserved. 66 バージョン管理とは : 集中型 vs. DVCS http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/
  67. 67. Git の考え方とポイント 何をバージョン管理するのか(1/1)  ある時点のソフトウェア・環境を構築するために必要なものすべて – ソフトウェアのソースコード – ビルドスクリプト – データベースのスキーマ定義、マイグレーションの SQL、初期データ – 環境構築用の設定ファイル・スクリプト Copyright © fullvirtue. All rights reserved. 67 知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html
  68. 68. ご静聴ありがとうございました! Copyright © @fullvirtue. All rights reserved. 68 グロースエクスパートナーズ株式会社 ITアーキテクト エンタープライズ向けのIT業界にて、企画から開発運用および新規事業立ち上げに関与。 現職は、エンタープライズ向けの新規サービス立ち上げ支援ITコンサルタントおよび ITアーキテクト。 これまで、顧客に価値をもたらすITサービスを提供し続けられることを目標とした ワークショップ型セッションに数多く登壇。『「超初心者」専門ITスクール TECH GARDEN SCHOOL』や『グロースハックアカデミー』にて IT人材教育の講師としても活躍。アジャイル開発やスクラム、 プロダクトマネジメント、Visual Studio / Microsoft Azureに関わる コミュニティの数々の主催またはコアメンバーとしても積極的に活動中。 コンタクト先 URL Blog http://fullvirtue.com/ Twitter https://twitter.com/fullvirtue 是非フォローしてください! Facebook https://www.facebook.com/fullvirtue Email fullvirtue@gmail.com 資料公開場所 http://slideshare.net/fullvirtue/ これまで登壇してきた資料はこちらで公開しています!是非ご覧ください! 関 満徳 せき みつのり

×