Skip to content

Instantly share code, notes, and snippets.

@udzura
Last active August 29, 2015 14:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save udzura/aab08e2f3d5398e88364 to your computer and use it in GitHub Desktop.
Save udzura/aab08e2f3d5398e88364 to your computer and use it in GitHub Desktop.
真・やわらかGitHub 2014summer

こんにちは


GitHub 使ってますか

  • 使ってましたか?

  • コマンドバリバリ使えますか?

$ git checkout https://github.com/rails/rails.git
  • を「GitHubのコマンド」とか言っちゃってませんか?

今日やること

  • 用語の整理
  • 上手なissueの使い方
  • 上手なプルリクエストの出し方
  • スプリチャルトーク
  • 参考資料

用語の整理


Git とは


  • 「バージョン管理システム」のひとつ
  • ファイルの変更履歴を管理するためのツール
  • 複数の状態を管理できたり、巻き戻したり、マージしたりが用意

Gitを作った人

  • リーナス
  • Linuxをつくったひと
  • いまは濱野氏がメンテナ

GitHub


  • Gitをよりよく使うためのウェブサービス
  • Gitのリポジトリサーバ
  • Gitのリポジトリビューア
  • Issueの管理
  • Pull Request

GitHub Enterprise


  • GitHubを社内に構築できるもの
  • クラウドに置きづらい微妙なデータもホストできる

まとめ

  • Gitは「バージョン管理ツール」
  • GitHubは「Webサービス」
  • GitHub Enterpriseは「GitHubを社内に構築したもの」

GitHubを使いこなす


Issueをちゃんと使う


Issueを作る


Issueを作るコツ

  • どうすれば終わるかをはっきりさせる
  • タイトルはその「終了条件」とひもづいた形にする

いい感じ

  • 「プロフィール画像を返しているAPIのレスポンス内容にavatarを追加」
    • →ちゃんと追加されたら完了
  • 「バックアッププラン開発についてのタスク一覧」(親Issue)
    • →すべてのタスクが終わったら閉じる
  • see also: ユーザストーリー

これは困る

  • タイトルが「ご提案」とか「困ったこと」
    • →タイトルだけみても何もわからないよ!!!!

Issueはたまる

  • いつクローズすればいいかが、客観的にわかるようでないと困ってしまうよ


言及する

  • どんどん関連するIssueのリンクを張る!!
  • 「#」だけでも出てくる
  • リンクをぺたっと張ってもいい


言及先にも出てくる


情報が集まっていく


制限事項...

  • GitHub/GHEをまたいでいると言及先には出てこないけど...
  • 貼るのは便利なので貼ってください

マイルストーン、Labels

  • 便利なので使っていきましょう
  • 期日が決まっている/エピックっぽい→マイルストーン
  • その他雑なものはレーベル
  • 絞り込みができるので便利なんですよ


検索する


Notice を飛ばす


Teams がある場合は


Notice を逃さない

  • 検索フォルダ作っておく @udzura
  • MacならTrailer.appつかう

Markdown記法に慣れる

  • 覚えておくべきこと
  • #, ##, ###... で見出し
  • リストの書き方

* foo
* bar
* buz


* [ ] 掃除をする
* [ ] ゴミを捨てる
* [ ] 区役所に行く


コードブロック記法

  • ただの引用ブロック風にもできる
  • 言語名の指定ができるので忘れない


  • emoji


  • その他は検索すれば出てくるよ!

Issueを使うスタンスについて

  • どんどんリンクする
  • どんどん言及する
  • 思ったことをどんどん更新する

なぜ?

  • ディスカッションをする
  • 意思決定の過程をオープンにする
  • 合意を作る

そのために最適のツールがGitHub(E)だ

  • ということ

プルリクエスト/イシューの中身


こんな感じで出してくれれば大丈夫です


必要そうな要素

  • 関連するIssueを貼る
  • 何をしたかの概要を書く
  • 完了条件を書く
  • 関係者にnoticeを送る

以下は控えめに

  • セルフマージ
  • 勝手にクローズ
  • 無言でマージ
  • そもそもプルリクを出さない
  • 目しか書かない

自己完結ダメ

  • チームで合意を作って進めるため
  • 意思決定の過程をオープンにするため
  • に、Issueを使うのです

くわしくは


参考になりそうな本


終わりに


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment