git for begineers github ハンズオン

57
GitHub ハンズオン Haruka Iwao PyLadies Tokyo Meetup #5 May 23, 2015

Upload: haruka-iwao

Post on 20-Jul-2015

3.391 views

Category:

Engineering


3 download

TRANSCRIPT

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/  – いろんなスライドや資料へのリンクがあります