github handson

55
GitHub handson Yoichiro Shimizu @budougumi0617

Upload: yoichiro-shimizu

Post on 17-Feb-2017

68 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: GitHub Handson

GitHub handsonYoichiro Shimizu@budougumi0617

Page 2: GitHub Handson

今日のゴール

• GitHubの基本的な機能を知っている• GitHubでWebサイトを公開してみる• GitHubでコードの変更管理が出来る• GitHubと他Webサービスを連携してみる

Page 3: GitHub Handson

注意• Gitの操作方法、分散管理については触れない• 本日の変更・操作は全て Web 上で行いま

す。

Page 4: GitHub Handson

GitHubとは何か

Page 5: GitHub Handson

GitHubとは• https://github.com/• 構成管理環境を提供するWebサービス• 970 万ユーザー /2,000 万プロジェクト (2015/06 時

点 )• Git プロトコルで操作する

• OSS は無料。非公開リポジトリの利用は $7 ~。

• オンプレ版もあり。

Page 6: GitHub Handson

活用企業

Page 7: GitHub Handson

公開リポジトリがある企業

• https://github.com/facebook• https://github.com/google• https://github.com/aws• https://github.com/Microsoft• https://github.com/gree• https://github.com/DeNADev

Page 8: GitHub Handson

国土地理院

• https://github.com/gsi-cyberjapan

Page 9: GitHub Handson

ゴールドマン・サックス

• https://github.com/goldmansachs

Page 10: GitHub Handson

NASA

• https://github.com/nasa

Page 11: GitHub Handson

Disney

• https://github.com/disney

Page 12: GitHub Handson

何が出来るのか

Page 13: GitHub Handson

変更(コミット)の歴史を記録

• コミット単位で変更履歴を記録

Page 14: GitHub Handson

変更差分の確認

• ファイル単位、コミット単位で可能

Page 15: GitHub Handson

ブランチで並行開発• ブランチ(枝)を作ることで並行開発が可能

Page 16: GitHub Handson

タグをつけてリリース管理• ある時点の変更にタグをつけてリリース管理

可能

Page 17: GitHub Handson

Wiki

• 各リポジトリに Wiki を作成可能

Page 18: GitHub Handson

障害 (変更要求 )管理• OSS ならば誰でもリクエストや障害起票可能

Page 19: GitHub Handson

変更依頼 (Pull Request)

• レビューコメントやテスト結果を1ページに

Page 20: GitHub Handson

API連携• 外部のテストサーバやチャットと連携

Page 21: GitHub Handson

カンバン (with ZenHub)

• ZenHub 連携でカンバンも利用可能

Page 22: GitHub Handson

バーンダウン (with ZenHub)• ZenHub 連携でバーンダウンチャートも利用

可能

Page 23: GitHub Handson

Webサイトを公開

Page 24: GitHub Handson

github.io

• GitHub のプロジェクトをそのままホストしてくれるサービス

• アカウント名のリポジトリ or”gh-pages” ブランチをホスティングしてくれる

• 詳細は以下

• http://qiita.com/budougumi0617/items/221bb946d1c90d6769e9

Page 25: GitHub Handson

Create Repo on GitHub

• 自アカウントの TOP ページ > Repositoriesタブ > 緑色の” New” ボタンを押下

Page 26: GitHub Handson

Create a new repository

• リポジトリ名は「アカウント名 .github.io 」にすること

Page 27: GitHub Handson

Settings > GitHub Pages

• 「 GitHub Pages 」欄の” launch automatic page generator” を押下

Page 28: GitHub Handson

ページを作成

• http://アカウント名.github.io で公開

Page 29: GitHub Handson

GitHubを使った開発(別サービスとの連携)

Page 30: GitHub Handson

サンプルコード&構成• Web アプリケーションを含んだ VM イメージ

デプロイ

Page 31: GitHub Handson

Coveralls

• テストカバレッジ集計

• テスト実行行の可視化

• https://coveralls.io• 自動テストサーバで実行したテストカバレッ

ジを集計してくれるサービス

Fork

Page 32: GitHub Handson

Travis CI

• クラウドにある Jenkins のようなサービス

• 自動ビルド・自動テスト

• ビルド成果物のデプロイなども可能

• https://travis-ci.org

Page 33: GitHub Handson

Docker Hub

• VM(Docker) イメージのバージョン管理サービス

• 主要 OSS/ 言語の環境構築済公式イメージ多数

• https://hub.docker.com

Page 34: GitHub Handson

サンプルコード&構成• Web アプリケーションを含んだ VM イメージ

デプロイ

Page 35: GitHub Handson

実践!

Page 36: GitHub Handson

メモ帳など開いておくとスムーズです

Page 37: GitHub Handson

Fork on GitHub

• https://github.com/budougumi0617/DevOpsForGolang

Page 38: GitHub Handson

Add repo on Coveralls• “RE-SYNK REPOS” 押下

• リポジトリのスイッチを ONに。” DETAILS” を押下

• https://coveralls.io/repos/new

Page 39: GitHub Handson

Alerts on Coveralls• 赤線部分を設定して” SAVE CHANGES” 押下

Page 40: GitHub Handson

Badge of Coveralls• “EMBED” を押して” MARKDOWN” をコピー

しておく

Page 41: GitHub Handson

Check Token on Coveralls• “repo_token” の値をメモしておく

Page 42: GitHub Handson

Add repo on Travis CI• “Sync account” 押下後、スイッチを ON に

• スイッチの横の歯車マークを押下

• https://travis-ci.org/profile/アカウント名

Page 43: GitHub Handson

Setting on Travis CI• 以下の環境変数を追加する

DOCKER_USERNAME, DOCKER_PASSWORD, DOCKER_EMAIL, COVERALLS_TOKEN

• COVERALLS_TOKEN は Coveralls でメモしたもの

Page 44: GitHub Handson

Badge of Travis CI• 下線のボタンをクリックし、青枠部分

を” Markdown” にした後、テキストをコピー

Page 45: GitHub Handson

Edit .travis.yml on GitHub• 青背景部分を削除

• 赤下線部分を自分のアカウント名に変更

Page 46: GitHub Handson

Setting on GitHub• リポジトリの Settings > Branches >

Choose a branch で” master” を選択する

Page 47: GitHub Handson

Setting on GitHub• “Protect this branch” 、” Require...” に

チェック

• “travis-ci”, “coveralls” にもチェック

Page 48: GitHub Handson

Edit README.md on GitHub• 青背景部分を削除

• メモしておいた自分の Badge の URL に変更

Page 49: GitHub Handson

Create new branch• “Create a new bra...” にチェック後、緑ボタ

ン押下

• ブランチ、プルリクエストを作成したことになる。

Page 50: GitHub Handson

Open Pull Request• 赤線を「 base:master 」に変更して緑ボタン

押下

Page 51: GitHub Handson

Execute auto test• 自動テスト / デプロイが実行される

Page 52: GitHub Handson

ここまでで時間が残ってたら、もうちょっとやってみま

す。

Page 53: GitHub Handson

まとめ

Page 54: GitHub Handson

今日のゴール

• GitHubの基本的な機能を知っている• GitHubでWebサイトを公開してみる• GitHubでコードの変更管理が出来る• GitHubと他Webサービスを連携してみる

Page 55: GitHub Handson

おしまい