Weitere ähnliche Inhalte
Kürzlich hochgeladen (10)
Visual Studio 2015 での Git 利用 - 鉄人から学ぶ! Visual Studio 2015 によるテスト・リファクタリングセミナー #tfsug
- 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.
- 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 利用
- 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. おことわり(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
- 9. Visual Studio 2015 + Git で
開発を始めるには
手順を交えてご紹介いたします。
・ Visual Studio 2015 + Git + Visual Studio Online
Copyright © fullvirtue. All rights reserved. 9
- 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. 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. Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online の利用を開始
Visual Studio Online へアクセスして利用を開始
– http://visualstudioonline.com/
Copyright © fullvirtue. All rights reserved. 12
- 13. Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online 上でチームプロジェクトを作成
Copyright © fullvirtue. All rights reserved. 13
TFSUG1026Demo
Scrum
Git
チェック
- 14. Visual Studio 2015 + Git で開発を始めるには
Visual Studio Online 上にチームプロジェクトが作成
Copyright © fullvirtue. All rights reserved. 14
チームプロジェクトが作成されたことを確認
- 15. Visual Studio 2015 + Git で開発を始めるには
Home 画面に移動
Copyright © fullvirtue. All rights reserved. 15
Home をクリック
- 16. Visual Studio 2015 + Git で開発を始めるには
Home 画面に移動
Copyright © fullvirtue. All rights reserved. 16
× をクリック
- 17. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 に関連づけ
Copyright © fullvirtue. All rights reserved. 17
Open in Visual Studio をクリック
- 18. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 に関連づけ
Copyright © fullvirtue. All rights reserved. 18
アプリケーションの移動 をクリック
- 19. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 19
緑色のアイコン(接続の管理)をクリック
- 20. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 20
Visual Studio Online の 接続 をクリック
- 21. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 21
接続 をクリック
チームプロジェクトに
チェックをつける
- 22. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 22
チームプロジェクトをダブルクリック
- 23. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 23
このリポジトリを複製 をクリック
※GitでいうCloneの操作と同じです
サーバー上にあるソースコード群を
自分のパソコン上にコピーします
- 24. Visual Studio 2015 + Git で開発を始めるには
Visual Studio 2015 からチームプロジェクトを開く
Copyright © fullvirtue. All rights reserved. 24
複製 をクリック
- 25. Visual Studio 2015 + Git で開発を始めるには
チームプロジェクト上で開発を開始
Copyright © fullvirtue. All rights reserved. 25
これですべての準備が完了しました!
あとは開発を始めるだけです!
ソリューションの「新規作成」をクリック
- 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. 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. 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/
- 43. Git の考え方とポイント
バージョン管理システムの方式(6/9)
『集中管理方式』
『分散管理方式』
Copyright © fullvirtue. All rights reserved. 43
サーバー上の
リポジトリ
チェックアウト & ファイルロック
ローカル
ファイルの編集
リモート
リポジトリ
ローカル
ファイルの編集
ローカル
リポジトリ
デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
- 44. Git の考え方とポイント
バージョン管理システムの方式(7/9)
『集中管理方式』
『分散管理方式』
Copyright © fullvirtue. All rights reserved. 44
サーバー上の
リポジトリ
チェックアウト & ファイルロック
コミット & ファイルロック解除ローカル
ファイルの編集
リモート
リポジトリ
ローカル
ファイルの編集
ローカル
リポジトリ
デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
- 45. Git の考え方とポイント
バージョン管理システムの方式(8/9)
『集中管理方式』
『分散管理方式』
Copyright © fullvirtue. All rights reserved. 45
サーバー上の
リポジトリ
チェックアウト & ファイルロック
コミット & ファイルロック解除ローカル
ファイルの編集
リモート
リポジトリ
ブランチ切替
ローカル
ファイルの編集
ローカル
リポジトリ
クローン or プル
デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
- 46. Git の考え方とポイント
バージョン管理システムの方式(9/9)
『集中管理方式』
『分散管理方式』
Copyright © fullvirtue. All rights reserved. 46
サーバー上の
リポジトリ
チェックアウト & ファイルロック
コミット & ファイルロック解除ローカル
ファイルの編集
リモート
リポジトリ
ブランチ切替
ローカル
ファイルの編集
ローカル
リポジトリ
マージ or コミット プルリクエスト
or プッシュ
デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460
クローン or プル
- 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. Git の考え方とポイント
ブランチ・タグを中心としたソフトウェア開発(1/2)
ブランチとは
– 履歴の流れを分岐して記録していくためのもの
– 分岐したブランチは他のブランチの影響を受けない
– 同じリポジトリ中で複数の変更を同時に進めていくことができる
タグとは
– 履歴のある時点の情報を記録していくためのもの
– 他のタグの影響を受けない
Copyright © fullvirtue. All rights reserved. 53
サルでもわかるGit入門 http://www.backlog.jp/git-guide/stepup/stepup1_1.html
- 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. Git の考え方とポイント
ブランチを中心としたソフトウェア開発(4/7)
Copyright © fullvirtue. All rights reserved. 58
A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/
masterhotfixreleasedevelopfeature
リリース前確認
で不具合発見し
たので対応
不具合対応を
開発環境にも反
映
リリース内容を
本番環境に反映
本番リリース
時にタグを付与
- 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/
開発用ブランチをまとめた例
リリース用ブランチをまとめた例
- 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/
- 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/
これまで登壇してきた資料はこちらで公開しています!是非ご覧ください!
関 満徳
せき みつのり