1
0

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 5 years have passed since last update.

[メモ]github プルリクエストからマージまで

Posted at

hotfix! ちょこっとだけ修正してすぐマージしたい時!

変更する

まずはlocalのmasterをremoteのmasterと一緒にする。

 git pull

最新の変更が反映されているか確認。

git log 

新しいブランチをmasterから作成する。ついでに移動する。

git checkout -b [ブランチ名]

これで新しいブランチはremoteのmasterと同じ状況になる。
ここまでできたら変更を加える。

今回はgitignoreファイルにvimで直接変更を加えてみる。
ブランチを切ってあるので今のディレクトリのファイルはブランチ先のファイルになっているのでvimを使って編集。

vim .gitignore

一応ちょっとだけvimの使い方を書くと

[a]   -> 編集モードにして編集
[esc] -> 編集モード解除
[:wq] -> 保存して終了
[:!q] -> 保存としないで終了

ステージング、コミット、プッシュまで。

それができたらステージング。

staging

git add .

うまくできたらこんな感じで表示される。

Changes to be committed:
   (use "git reset HEAD <file>..." to unstage)

 modified:   .gitignore

commit

git commit -m 'コメントを入れる'`

ログを確認して

git log

push

git push --set-upstream origin [ブランチの名前]

※origin直下の場合?
#プルリク作成からmerge
プッシュできたらいよいよプルリク。
CLIもある(https://qiita.com/sl2/items/0ac1c6b4df5d69c0bb1b)
みたいだけどGUIの方が扱いやすいらしいのでwebページへ。

New pull request を押したらマージ先とマージ元を選択する。スクリーンショット 2019-11-20 19.18.58.png
選択したらcreate pull request をおす。
スクリーンショット 2019-11-20 19.18.39.png
編集タイトルと詳細を書く。
スクリーンショット 2019-11-20 19.22.20.png
その時、Reviewersにpullrequestを確認して欲しい、masterへのmerge権限を持つ人を割り当てる
でcreate pull requestすると
承認待ちになる。
承認してもらったら、merge pull request ボタンを押してcomfirmボタンを押してgithubのmasterへのmergeが完了する。

#サーバーに反映
実際にページを運用しているサーバー側のマスターブランチを最新にして終了。

#もしプルリクしたコミットに編集の余地があった時。
プルリクエストをブラウザからcloseする。
ローカルのコミットを戻す。

git reset --soft HEAD^
git log
git status
git reset HEAD .gitignore
git status

--soft はcommit履歴のみ消す。
--hard はcommit履歴と変更の両方消す。

この方法でプルリクを編集しようと思った場合コンフリクトするので再編集後、pushする前に、remoteの同じ名前で違う変更点のあるブランチを削除しておく。
削除せずにpushしようとするとエラーになる。

log

505 git checkout master 506 git checkout master 507 git branch 508 git log 509 git checkout -b ignoreFix 510 git branch 511 git log 512 git branch 513 git status 514 git status 515 vim .gitignore 516 cat .gitignore 517 git commit 518 git add 519 git add . 520 git status 521 git commit -m 'ignoreに追加' 522 git log 523 git push 524 git --set-upstream origin ignoreFix 525 git push --set-upstream origin ignoreFix 526 git log 527 git reset --soft HEAD^ 528 git log 529 git status 530 git reset HEAD .gitignore 531 git status 532 history 533 vim .gitignore 534 cat .gitignore 535 git add . 536 git status 537 git commit -m 'ignoreに追加' 538 git status 539 git push --set-upstream origin ignoreFix 540 git branch 541 git log 542 git push --set-upstream origin ignoreFix 543 git push --set-upstream origin ignoreFix 544 history

参考にした記事

https://qiita.com/misakiagata/items/d572e89b5b35e046b7a7
https://qiita.com/konweb/items/621722f67fdd8f86a017
https://riptutorial.com/ja/git/example/3175
https://techacademy.jp/magazine/10168

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?