Open6

実務でよく使うgit操作

アモアモ

rebase

マージする前に行う。
他の人の変更履歴の順番も整理してくれる。
手元でコンフリクトの解消をしたら、pushまで行う。

git pull --rebase origin {マージ先のブランチ}
例)git pull --rebase origin develop
↓
git push -f
アモアモ

stash

変更履歴を一時的に退避したいときに使用する。
作業中に別のブランチで作業に必要になったときなどに使用する。

  • 変更履歴を退避
git stash save -u {分かりやすいメモ}
例)git stash save -u 0302_11:00_ヘッダーUI修正中
  • 変更履歴を確認
git stash list
  • 変更履歴を取り込む
- 最新の変更履歴
git stash pop

- 特定の変更履歴
例)git stash pop ${HEAD1}
アモアモ

cherry-pick

特定のコミットだけをマージする。
他の人が作業した一部分だけ取り込んだ上で作業したい時に使用した。他にも用途はたくさんありそう。

git cherry-pick 特定のコミットID
アモアモ

issueを用いた開発

  • プルリクにclose #issue番号を記載するとプルリクが完了したらissueが自動的に閉じる
  • ブランチ名をブランチ名_#issue番号とする
  • コミット名をコミットメッセージ #issue番号とする
アモアモ

コミットメッセージの先頭につける

  • パッと見使いそうなもの
接頭辞 説明
fix 既存の機能に問題があった場合に使用
hotfix 既存の機能にクリティカルな問題があった場合に使用
add 新しいファイルや機能を追加する場合に使用
feat 新しい機能やファイルを追加する場合に使用
update 既存の機能に問題がなく、ただし修正を加えたい場合に使用
change 仕様変更により、既存の機能に修正を加えた場合に使用
clean/refactor コードを修正し、改善する場合に使用
remove/delete ファイルを削除する場合や、機能を削除する場合に使用
rename ファイル名を変更する場合に使用
move ファイルを移動する場合に使用
style コーディングスタイルの修正をする場合に使用
アモアモ

プルリク作成時の工夫

  • 「あえてこのような実装をした」「仕様が固まっていない」「別PRで対応を行う」といった場合、プルリクのコードにあらかじめコメントを書いておく。(もしくはプルリク内)