Git for Begineers GitHub ハンズオン

Emma Haruka Iwao
Emma Haruka IwaoDeveloper Advocate
GitHub ハンズオン
Haruka Iwao
PyLadies Tokyo Meetup #5
May 23, 2015
おやくそく
•  このスライドは個人的な物で、私の雇用
主もGitHubも無関係です
•  内容は正確を期していますが、間違って
いたらごめんなさい(無保証)
わたしはだれ?
•  岩尾 はるか (@Yuryu)
•  PyLadies Tokyo方面から来ました
•  恵比寿のソフトウェアエンジニア
– Linuxとか売ってます
– コミケでLinux本出してます
•  光の戦士(FF14)やってます
•  GitHubは2009年12月から利用中
今日のおしながき
•  GitHub とは?
•  GitHub を使ってみよう!
•  デスクトップから使ってみよう!
•  おまけ
GitHub とは?
GitHubとは
•  Gitを使ったコラボレーションサービス
•  単なるホスティング以上!
•  コードを公開する便利なところ
•  ネコ+タコのOctocatがマスコット
•  オープンソース利用なら無料!
GitHubで開発されている!
プロジェクトの例
•  Bootstrap
•  Node.js
•  Ruby on Rails
•  Docker
•  Django
•  Flask
•  Homebrew
•  Angular.js
•  Ansible
•  Tornado
•  GitLab
•  reddit
•  scikit-learn
•  Spring Framework
•  Elasticsearch
•  Storm
GitHubを使ってみよう
GitHubを使ってみよう
•  このセッションでは、「習うより慣れ
ろ」でまずはGitHubを使ってみます
•  GitHubの便利機能は無数にあるので、特
に重要な基本だけを説明します
•  実際には、プロジェクトごとに決まりが
あるので、詳しい人に聞いてみてね!
アカウント作成
ユーザー名
E-mail
パスワード
アカウント作成(続き)
•  すでにIDを持っていてスクリーンショッ
ト取れないので、個別に説明します
•  プランは「Free(無料)」でOK
– 有料プランは非公開のレポジトリが置ける
– 企業、グループ向けプランもあります
•  確認メールが届くので対応
ログイン!
レポジトリ作成
レポジトリ名
説明(オプション)
チェックする→
リポジトリができた
GitHub Flow
1. ブランチを作成
2. コミットを追加
3. Pull-Request
4. レビュー
5. マージ
1. ブランチを作成
•  変更点をまとめて管理する
•  いいこと
– 他の人に影響を及ぼさない
– 困ったときにまとめて無かったことにできる
– 複数の開発を平行できる
1. ブランチを作成
2. コミットを追加
•  ファイルを編集してみよう
ファイルを
選ぶ
鉛筆で編集
2. コミットを追加
2. コミットを追加
変更点の概要
変更点の詳細な説明
コミット!
3. Pull-Request
•  GitHubの便利な機能
•  「変更したから採用して!」
•  プルリク、PRとも略します
3. Pull-Request
クリック!
3. Pull-Request
コメントを記入
概要を記入
作成!
ブランチを
確認
3. Pull-Request
コメントを
追加
マージ
3. Pull-Request
コミット
一覧
変更点一覧
4. レビュー
•  内容についてコメントを書こう!
•  ブランチにさらにコミットしてみよう!
– 手順は 2. コミットを追加と同様
•  コミットが済んだらもう一度PRを確認!
•  すべてOKならいよいよマージしよう!
5. マージ
クリック!
5. マージ
これでマージ成功
作業が完了したら Delete banchでブランチ削除
GitHub Flow
1. ブランチを作成
2. コミットを追加
3. Pull-Request
4. レビュー
5. マージ
複数人でやってみよう
1. Settings(一番
下)を選ぶ
2. Collaborators
を選ぶ
3. 追加したい人の
ユーザー名を入力
4. クリックで追加
隣の席の人とユーザー名を交換しよう!
お互いのレポジトリでGitHub Flowをしてみよう!
GitHub Flow
1. ブランチを作成
2. コミットを追加
3. Pull-Request
4. レビュー
5. マージ
fork
fork してみよう
•  「書き込み権を渡さずに、コードを編集
してもらいたい」
•  「ちょっと編集してみたいけど、権限も
らうほどじゃないなぁ」
•  コピーを自分の手元に作る→fork
右上のForkボタン
を押す
fork中…
自分のレポジトリになった
普段通りforkで作業
デスクトップ
デスクトップから使う
•  Webはお手軽だけど小回りがきかない
•  デスクトップで使おう
– https://windows.github.com/	
  
– https://mac.github.com/	
  
•  初回起動時に名前、Email、GitHubのID/パ
スワードを入れると準備完了
起動画面
レポジトリ追加
+ボタン
新規作成
既にPC上に存在するもの
を、このソフトに追加
GitHubから
Clone(コピー)
基本操作
右クリック
メニュー
ブランチ選択
新規作成
Pull-Request
GitHub
サーバーと同期
-  GitHubで開く
-  エクスプローラーで見る
-  Gitシェルを開く
-  レポジトリ削除
GitHub Flow
1. ブランチを作成
2. コミットを追加
3. Pull-Request
4. レビュー
5. マージ
ブランチを作成
エディタで編集
•  Open in Explorer や Open in Finder でファ
イルを編集してみよう
•  MacならOpen in Terminalでシェルを開い
てもOK
•  終わったら変更点を確認→コミット
コミット方法(Windows)
•  “Uncommitted Changes” をクリック
•  差分とブランチを確認
•  コミットの説明を書いてCommit
コミット方法(Mac)
•  Changesタブをクリック
•  差分とブランチを確認
•  コミットの説明を書いてCommit
Pull-Request 作成
•  右上の “Publish” をクリック
– ブランチがGitHubに送信されます
•  Pull-Requestのマークをクリック
•  説明を書いてPull-Requestを作成
Pull-Requestその後
•  レビュー、マージはWebから作業
•  追加のコミットは、同じように編集して
コミット、右上の「Sync」で同期
•  ローカルのBranchは削除するブランチか
ら別のブランチに切り替えた後、
「Manage」または「Branches」から削除
ブランチ削除(Windows)
ゴミ箱で削除
ブランチ削除(Mac)
Deleteで削除
シェル
•  Open in Git Shell (Windows)または Open
in Terminal(Mac)で、コマンドラインが利
用できます
•  細かい作業をするときに便利
– 調べてみてね
Gistとは
•  ファイル数個だけのGitレポジトリ
ファイル名
Gistの説明(タイトル)
ファイルの中身
非公開か公開で作成
ファイルを追加
https://gist.github.com/
IntelliJ + GitHub
•  GitHub PluginでIDEから
利用可能
•  一通りのことができる
•  ファイルを右クリック
で”Create Gist”
–  すぐ貼れて便利
GitHub Enteprise
•  企業専用のGitHub
•  「ソースを共有サービスに出したくな
い」人でもばっちり使える
•  ファイアウォールの内側で動作
– 例外: AWS上でも動かせます
•  会社にない人はねだってみよう!
– 1人1ヶ月あたり2,000円ちょっとです
GitHub Shop
•  グッズを販売(Tシャツ、ステッカー他)
•  送料結構するので共同購入もあり
GitHub Octodex
•  いろんなOctocatのギャラリーです
参考資料
•  GitHub Guides
–  https://guides.github.com/	
  
–  「GitHubをどう使うか」をやさしく解説
–  英語ですが図がわかりやすい
•  Git Book
–  http://git-­‐scm.com/book/ja/v1	
  
–  Gitそのものの詳しい解説
•  【永久保存版】初心者 ~ 上級者向け Gitをより理
解するために厳選したサイトやスライドをまとめ
てみた
–  https://nanapi.jp/109937/	
  
–  いろんなスライドや資料へのリンクがあります
1 of 57

More Related Content

What's hot(20)

会社に Github導入した話会社に Github導入した話
会社に Github導入した話
Yutaka Kinjyo88.7K views
やりなおせる Git 入門やりなおせる Git 入門
やりなおせる Git 入門
Tomohiko Himura85.1K views
ノンプログラマのGit入門ノンプログラマのGit入門
ノンプログラマのGit入門
Muyuu Fujita2.3K views
Yapc2012資料Yapc2012資料
Yapc2012資料
matsuo kenji29.9K views
Git紹介Git紹介
Git紹介
Seiji Ochiai1.7K views
Git勉強会Git勉強会
Git勉強会
masahiro_minami2.7K views
GitHubで学ぶバージョン管理GitHubで学ぶバージョン管理
GitHubで学ぶバージョン管理
Masafumi Yokoyama2K views
Windows環境でのgitまとめ(2016.8)Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)
Tadahiro Ishisaka7.7K views
デザイナのためのGit入門デザイナのためのGit入門
デザイナのためのGit入門
dsuke Takaoka252.7K views
はじめてのGit #gitkyotoはじめてのGit #gitkyoto
はじめてのGit #gitkyoto
Hisateru Tanaka4.4K views
Gitを使いこなしてみよう!Gitを使いこなしてみよう!
Gitを使いこなしてみよう!
Hiroshi Maekawa3.4K views
マジカルsvnとキュアgitマジカルsvnとキュアgit
マジカルsvnとキュアgit
Takafumi ONAKA17.8K views
Git勉強会Git勉強会
Git勉強会
Masaaki Kakimoto1K views
Git Flowを運用するためにGit Flowを運用するために
Git Flowを運用するために
Shun Tsunoda2.5K views

Viewers also liked(20)

2015 Bio-IT Trends From the Trenches2015 Bio-IT Trends From the Trenches
2015 Bio-IT Trends From the Trenches
Chris Dagdigian16.8K views
Docker調査20150704Docker調査20150704
Docker調査20150704
HommasSlide1.9K views
挫折しないRedmine挫折しないRedmine
挫折しないRedmine
Go Maeda120.5K views
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0
Masakazu Matsushita231.6K views
Redmineって何ができるの?Redmineって何ができるの?
Redmineって何ができるの?
Tomohisa Kusukawa154.9K views
はじめてのgithubはじめてのgithub
はじめてのgithub
Yasutaka Hamada13.4K views
こわくない Gitこわくない Git
こわくない Git
Kota Saito881.1K views

More from Emma Haruka Iwao(20)

Favorite English YouTube ChannelsFavorite English YouTube Channels
Favorite English YouTube Channels
Emma Haruka Iwao1.7K views
Docker, Kubernetes and OpenShift v3Docker, Kubernetes and OpenShift v3
Docker, Kubernetes and OpenShift v3
Emma Haruka Iwao5K views
Storage by Red Hat #rhcpday 2015Storage by Red Hat #rhcpday 2015
Storage by Red Hat #rhcpday 2015
Emma Haruka Iwao4K views
RHEL, CentOS 7 に移行しよう! LTRHEL, CentOS 7 に移行しよう! LT
RHEL, CentOS 7 に移行しよう! LT
Emma Haruka Iwao16.3K views
Ceph Loves OpenStack: Why and HowCeph Loves OpenStack: Why and How
Ceph Loves OpenStack: Why and How
Emma Haruka Iwao2.3K views
AWS VM import / export ハンズオンAWS VM import / export ハンズオン
AWS VM import / export ハンズオン
Emma Haruka Iwao7.7K views
Hello, systemdHello, systemd
Hello, systemd
Emma Haruka Iwao35.2K views
私がCephを好きな7つの理由私がCephを好きな7つの理由
私がCephを好きな7つの理由
Emma Haruka Iwao5.1K views
Ceph アーキテクチャ概説Ceph アーキテクチャ概説
Ceph アーキテクチャ概説
Emma Haruka Iwao30.4K views
EC2とLinuxディストロ事情EC2とLinuxディストロ事情
EC2とLinuxディストロ事情
Emma Haruka Iwao28.3K views

Recently uploaded(8)

Git for Begineers GitHub ハンズオン