2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【git実用的まとめ】個人開発でのgitの使い方

Last updated at Posted at 2023-04-02

はじめに

railsを使って開発をしているプログラミング初心者のため、
Gitの使い方がまだあまりよくわかっておりませんでした。

個人開発において、コードレビューをしていただきながら開発していく際の
Gitの使い方を流れに沿って説明します。

特に知りたかったことが、「レビューを待っているときに、待ち時間を無駄にしないために次の開発を行う方法」だったのですが、簡単に見つからなかったためここにまとめます。

常に「どのブランチにいる状態なのか」を意識しながら行っていきます。

全体の流れ

行いたいことの流れは以下です。

①githubのリモートリポジトリからローカルリポジトリにデータを取得する

②取得したものから、ブランチを分けて開発する

③ローカルリポジトリの変更内容をリモートリポジトリに送りプルリクを出す

④コードレビューをしていただいている間に、ブランチを分けて別の新たな開発を行う

⑤コードレビューをいただき、④で開発した部分はとりあえず置いておきながら、③の状態に戻してご指摘点を修正する

⑥再度レビューしていただく

⑦④の状態に戻す

⑧プルリクの承認を得たので、github上でmainにマージを行いそれをローカルリポジトリにも、④にも反映させる(④の変更した部分はそのままにしたい)

⑨④の開発を続ける

①githubのリモートリポジトリからローカルリポジトリにデータを取得する

必ず、mainブランチにいる状態で行います。

$ git pull origin main

これで、ローカルリポジトリにデータを取得できました。

②取得したものから、ブランチを分けて開発する

今はmainにいる状態なので、ブランチを分けます。

$ git checkout -b AAA

//"AAA"の部分に好きなブランチ名を書く

ここで開発していきます。

本当にブランチを分けられているか不安な場合は

$ git branch

これで確認できます。

③ローカルリポジトリの変更内容をリモートリポジトリに送りプルリクを出す

開発が完了したら行うコマンドです。

$ git add -A
$ git commit -m "〇〇機能の実装"
$ git push origin HEAD

//"〇〇機能の実装"の部分に好きなメッセージを入れる

githubを確認し、プルリクを行います。

④コードレビューをしていただいている間に、ブランチを分けて別の新たな開発を行う

レビューをしてくださる方の都合もあるので、待っている間に次の開発に取り掛かります。

$ git checkout -b BBB

//"BBB"の部分に好きなブランチ名を書く

ここで次の開発をしましょう。

⑤コードレビューをいただき、④で開発した部分は保存、③の状態に戻してご指摘点を修正する

レビューしていただいたので、ご指摘いただいた部分を修正します。
そのためには、先に取り掛かっていた開発を一時保存し、元の状態に戻す必要があります。

$ git stash -u
$ git checkout AAA

git stash -u の "-u" は無くても大丈夫ですが、
無かった場合はaddしていないファイルはそのまま残ってしまいます。
つけておいた方が安心です。

これで、最初の開発部分を修正してきます。

⑥再度レビューしていただく

修正が終わったら、再度レビューをしていただきます。

$ git add -A
$ git commit -m "〇〇修正"
$ git push origin HEAD

//"〇〇修正"の部分に好きなメッセージを入れる

githubで確認をし、レビュー担当者にご連絡をします。

⑦④の状態に戻す

またレビュー待ちの時間があるので、次の開発を進めておきます。

$ git checkout BBB
$ git stash list
$ git stash pop stash@{0}

git stash list で一時保存している状態のものが確認できるので、それに合ったstash@{0}を選択します。

ここで再度、新たな開発の続きを行います。

⑧プルリクの承認を得たので、github上でmainにマージを行いそれをローカルリポジトリにも、④にも反映させる(④の変更した部分はそのままにしたい)

承認を得たら、承認部分を反映させます。
今、新たな開発をしている状態でもあるので、一時保存を行なってから反映させます。

$ git stash -u
$ git checkout AAA
$ git pull origin AAA
$ git checkout BBB
$ git merge AAA

これで新たな開発部分にも、修正点を反映させることができます。
コンフリクトがある場合は、必ず修正しておきます。

⑨④の開発を続ける

これで最初の開発は完了したので、新しい開発を進めていきます。

$ git checkout BBB
$ git stash list
$ git stash apply stash@{0}

以上を適宜、繰り返しです。

お読みいただき、ありがとうございました!

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?