github handson
TRANSCRIPT
GitHub handsonYoichiro Shimizu@budougumi0617
今日のゴール
• GitHubの基本的な機能を知っている• GitHubでWebサイトを公開してみる• GitHubでコードの変更管理が出来る• GitHubと他Webサービスを連携してみる
注意• Gitの操作方法、分散管理については触れない• 本日の変更・操作は全て Web 上で行いま
す。
GitHubとは何か
GitHubとは• https://github.com/• 構成管理環境を提供するWebサービス• 970 万ユーザー /2,000 万プロジェクト (2015/06 時
点 )• Git プロトコルで操作する
• OSS は無料。非公開リポジトリの利用は $7 ~。
• オンプレ版もあり。
活用企業
公開リポジトリがある企業
• https://github.com/facebook• https://github.com/google• https://github.com/aws• https://github.com/Microsoft• https://github.com/gree• https://github.com/DeNADev
国土地理院
• https://github.com/gsi-cyberjapan
ゴールドマン・サックス
• https://github.com/goldmansachs
NASA
• https://github.com/nasa
Disney
• https://github.com/disney
何が出来るのか
変更(コミット)の歴史を記録
• コミット単位で変更履歴を記録
変更差分の確認
• ファイル単位、コミット単位で可能
ブランチで並行開発• ブランチ(枝)を作ることで並行開発が可能
タグをつけてリリース管理• ある時点の変更にタグをつけてリリース管理
可能
Wiki
• 各リポジトリに Wiki を作成可能
障害 (変更要求 )管理• OSS ならば誰でもリクエストや障害起票可能
変更依頼 (Pull Request)
• レビューコメントやテスト結果を1ページに
API連携• 外部のテストサーバやチャットと連携
カンバン (with ZenHub)
• ZenHub 連携でカンバンも利用可能
バーンダウン (with ZenHub)• ZenHub 連携でバーンダウンチャートも利用
可能
Webサイトを公開
github.io
• GitHub のプロジェクトをそのままホストしてくれるサービス
• アカウント名のリポジトリ or”gh-pages” ブランチをホスティングしてくれる
• 詳細は以下
• http://qiita.com/budougumi0617/items/221bb946d1c90d6769e9
Create Repo on GitHub
• 自アカウントの TOP ページ > Repositoriesタブ > 緑色の” New” ボタンを押下
Create a new repository
• リポジトリ名は「アカウント名 .github.io 」にすること
Settings > GitHub Pages
• 「 GitHub Pages 」欄の” launch automatic page generator” を押下
ページを作成
• http://アカウント名.github.io で公開
GitHubを使った開発(別サービスとの連携)
サンプルコード&構成• Web アプリケーションを含んだ VM イメージ
デプロイ
Coveralls
• テストカバレッジ集計
• テスト実行行の可視化
• https://coveralls.io• 自動テストサーバで実行したテストカバレッ
ジを集計してくれるサービス
Fork
Travis CI
• クラウドにある Jenkins のようなサービス
• 自動ビルド・自動テスト
• ビルド成果物のデプロイなども可能
• https://travis-ci.org
Docker Hub
• VM(Docker) イメージのバージョン管理サービス
• 主要 OSS/ 言語の環境構築済公式イメージ多数
• https://hub.docker.com
サンプルコード&構成• Web アプリケーションを含んだ VM イメージ
デプロイ
実践!
メモ帳など開いておくとスムーズです
Fork on GitHub
• https://github.com/budougumi0617/DevOpsForGolang
Add repo on Coveralls• “RE-SYNK REPOS” 押下
• リポジトリのスイッチを ONに。” DETAILS” を押下
• https://coveralls.io/repos/new
Alerts on Coveralls• 赤線部分を設定して” SAVE CHANGES” 押下
Badge of Coveralls• “EMBED” を押して” MARKDOWN” をコピー
しておく
Check Token on Coveralls• “repo_token” の値をメモしておく
Add repo on Travis CI• “Sync account” 押下後、スイッチを ON に
• スイッチの横の歯車マークを押下
• https://travis-ci.org/profile/アカウント名
Setting on Travis CI• 以下の環境変数を追加する
DOCKER_USERNAME, DOCKER_PASSWORD, DOCKER_EMAIL, COVERALLS_TOKEN
• COVERALLS_TOKEN は Coveralls でメモしたもの
Badge of Travis CI• 下線のボタンをクリックし、青枠部分
を” Markdown” にした後、テキストをコピー
Edit .travis.yml on GitHub• 青背景部分を削除
• 赤下線部分を自分のアカウント名に変更
Setting on GitHub• リポジトリの Settings > Branches >
Choose a branch で” master” を選択する
Setting on GitHub• “Protect this branch” 、” Require...” に
チェック
• “travis-ci”, “coveralls” にもチェック
Edit README.md on GitHub• 青背景部分を削除
• メモしておいた自分の Badge の URL に変更
Create new branch• “Create a new bra...” にチェック後、緑ボタ
ン押下
• ブランチ、プルリクエストを作成したことになる。
Open Pull Request• 赤線を「 base:master 」に変更して緑ボタン
押下
Execute auto test• 自動テスト / デプロイが実行される
ここまでで時間が残ってたら、もうちょっとやってみま
す。
まとめ
今日のゴール
• GitHubの基本的な機能を知っている• GitHubでWebサイトを公開してみる• GitHubでコードの変更管理が出来る• GitHubと他Webサービスを連携してみる
おしまい