😎

GitHub Issueを用いた開発手順

2020/12/13に公開
2

はじめに

今回は、Git Issueを用いた開発方法について書きたいと思います。完全に備忘録です。
今後よく使う予定なのでいちいち調べ直さなくてもいいようにまとめておきます😌

issueの作成手順

  1. GitHub上の該当プロジェクトのタブからIssuesを選択する
  2. New issueを選択
  3. issueのタイトルと内容を記入してSubmit new issueを押す(issueが追加される)
    • コメントでチェックボックス等を付けることが出来るので子タスクの管理としても便利

issueを用いた開発手順

  1. 登録されているissueに合わせて新たにブランチを切って開発を始める

    • git branch 新規ブランチ名_#issue番号としてissue番号を付けておくと今後見やすくて便利
      • git checkout 新規ブランチ名で作業ブランチに移動することを忘れない
    • ブランチの移動まで一括で行いたい場合は、git checkout -b 新規ブランチ名_#issue番号として実行する。-bオプションは「ブランチの作成(branchのb)」のこと。

  2. キリの良いところで適宜コミットする(git commit -m "コミットメッセージ #issue番号"

    • コミットする時必ず対応するissue番号を半角スペースを空けて付け加えること!(こうすることで、そのIssueに関するコミットだということを紐付けることが出来る)

  3. 作業が完了したら適宜git pushする(全て終わってからじゃなくてもOK)

    • この時作業ブランチ宛にpushすることに注意!(git push origin 作業ブランチ名 または、 git push origin HEAD

  4. 作業が全て完了したらプルリクを作成し、リモートのmainブランチにmergeする

    • プルリクの際、コメント欄にclose #issue番号と書くと、mergeされる際に自動的にそのissueがcloseになるので便利
    • プルリクの流れは以下の通り
      • Compare & pull requestボタンを押す
      • Write欄にコメントを書く(変更点の記入 & close #issue番号の記入)
      • Create pull requestボタンを押す
      • File changedで変更差分を確認(コメントがあればコメント)
        • この時、修正箇所がある場合はコメント等で指摘が入る(先輩等から)
        • 指摘を踏まえての修正作業がある場合はMerge pull requestの前に以下の流れを取って修正作業をする
          • 作業ブランチで修正作業をする
          • git addgit commitする
          • git push origin 同作業ブランチ名でpushする
          • 上記のようにすることで、同ブランチ宛てにpushを行っていれば、自動的に最新のコミット履歴がプルリクにも積み重なるようになっている
          • この作業をプルリクがOKとなるまで繰り返す
      • Conversationタブ内のMerge pull requestボタンを押す(この前までなら修正が効く)
      • Confirm mergeボタンを押す
      • Delete branchボタンを押してリモートの作業ブランチを削除する

  5. ローカルのmainブランチをリモートブランチと同じ状態にする(git pull origin main

    • git checkout mainでmainブランチに移動する
    • git pullgit pull origin main)する(チーム開発においては「git fetch + git merge」の方が無難かも)
    • git pullしたあとはローカルでmerge commitが作成されるので、ここで一度git pushしてリモートのmainブランチを更新しておいたほうがいいかも。(因みに、このmerge commitの作成を回避するためには、git pull --rebaseコマンドを使うといいとかなんとか)
  6. ローカルにある作業ブランチを削除する(git branch -d 作業ブランチ名

  7. 【ここ個人用】 Rails側ではこの後、git push heroku mainでherokuの方も最新の状態をデプロイしておく

    • データベースの追加や更新等あれば、heroku rake db:migrateも行う

  8. 完了!以下また①〜⑥の繰り返し


参考にしたサイト

GitHubで編集を提案

Discussion

NakajimaNakajima

突然失礼いたします。
こちらの記事を見てお声がけさせて頂きました。

2goというGithub Issueをキレイにまとめて表示するというサービスを作っていまして、以下に概要をまとめております。
https://zenn.dev/nice2have/articles/aa15eccd13a23c

記事の内容とリンクするところがあるのかなと思いまして、もし興味があるようでしたら利用した結果のフィードバックをもらえないかなと思っております。

お忙しいところ、お手数をおかけいたしますが、ご検討いただけますと幸いです。

https://2go.plus

koukou

@Nakajima さん

コメントして頂きありがとうございます!

素敵なサービスですね!
ただ最近は個人開発する時間が中々捻出できなくなっていまして、Issueを用いた開発をする機会があまり取れそうになく…😞

年末頃には色々と落ち着いて個人開発を再開できる気がしているので、もしその際でも宜しければ是非利用させて頂きますね!

素敵なサービスをありがとうございます!☺️