🕟
Gitコマンドでブランチ作成からマージまでを行う
※必要に応じて追加するつもり
実施環境
- git version 2.7.4
- Windows 10 Enterprise
- ブランチ名
- マージ先: develop
- 作業ブランチ: issue-xx
手順
1. 最新のdevelopでブランチを作成する
- developに移動
git checkout develop
- 最新のdevelopを取得
git pull
- 作業ブランチ作成&作業ブランチに移動
git checkout -b issue-xx
※作ったブランチ名を間違えたとき(変更したいブランチにいる状態で実行)
git branch -m <新しいブランチ名>
作成済みのブランチをローカルにチェックアウトする場合
git checkout -b issue-xx origin/issue-xx
2. 変更をステージングする
- 変更したファイルを確認
git status
- 変更したファイルをすべてステージに追加
git add . # ファイル指定の場合 git add <ファイルへのパス>
ステージングを取り消し
- すべて取り消し
git reset HEAD
- ファイル指定の場合
git reset HEAD <ファイルへのパス>
変更を取り消し
※ステージに追加する前の場合
- 全部の変更を元に戻す(新規作成ファイルは削除されない)
git checkout .
- 全部の変更を元に戻す(新規作成ファイルも削除する)
git clean -df .
- 1ファイルの変更を元に戻す
git checkout <元に戻したいファイルへのパス>
3. 変更をコミットする
- ステージに追加したファイルをコミット
git commit -m "コミットメッセージ"
- コミット内容を確認([q] で終了)
git show <コミットのハッシュ値>
- リモートブランチにプッシュ
git push origin issue-xx
- レビューを依頼&指摘対応
3.1. コミット内容を変更する(プッシュ前)
- コミットメッセージを修正する
git commit --amend -m "修正したコミットメッセージ"
- コミットにファイルを追加する
git add <追加するファイルへのパス> git commit --amend --no-edit
- コミットを取り消し&ステージングを戻す
git reset --mixed HEAD~
4. developへマージ(コンフリクトなしの場合)
- 最新のdevelopに更新
git checkout develop git pull
- 作業ブランチをdevelopへマージする(developで実行)
git merge --no-ff issue-xx
- 必要ならコミットメッセージを修正する
git commit --amend -m "修正したコミットメッセージ"
- コミット内容を確認([q] で終了)
git log git show <コミットのハッシュ値>
- プッシュ
git push origin develop
その他
スタッシュを使う
- スタッシュへ退避
git stash save "メッセージ"
- スタッシュを確認
git stash list stash@{0}: On issue-xx: 退避時に設定したメッセージ
- スタッシュから戻す
git stash apply stash@{0}
- スタッシュを削除
git stash drop stash@{0}
- スタッシュから戻す&削除
git stash pop stash@{0}
cherry-pick(他のブランチの特定のコミットを取り込む)
- 取り込みたいコミットのIDをgit logなどから取得する(ここでは「
xxxxxxxx
」と表示) - コミットを取り込みたいブランチに移動する
git checkout issue-xx
- cherry-pickを実行(コンフリクトがない場合)
git cherry-pick xxxxxxxx
Discussion