読者です 読者をやめる 読者になる 読者になる

tweeeetyのぶろぐ的めも

アウトプットが少なかったダメな自分をアウトプット<br>\(^o^)/

【git】pull requestを出す前 or 出した後の取り消し

はじめに

githubのpull requestを出す前後で取り消すメモ。 ほとんど手順メモ程度な感じ+他記事で使うスニペット記事。

とはいえ、数あるgit便利コマンドの中で毎回使うものではないけど
いざって時に役立つ、もしくは、困るのは取り消し系のコマンドですよね。

補足

他の取り消しもぱっと見たい自分用にまとめたので参考までに。

アジェンダ

  1. pull request出す直前に取り消し
  2. pull request出した直後に取り消し

※ mergeはする前までの話しです

初期状態

試す前に、今の状態がこんな感じだったとして進めます

※ 初期コミットのみ
$ git log --oneline
1e20006 Initial commit

$ ls -l
drwxr-xr-x  15 hoge  hoge  510  6 10 15:34 .git
-rw-r--r--   1 hoge  hoge   26  6 10 15:30 README.md

$ git branch 
* master

最初にgithub上でリポジトリを作ってcloneしただけな感じです。

1. pull request出す直前に取り消し

作業してaddしてcommitしてgit push origin ブランチ名して
pull request出そうかなの前までの段階で取り消す方法です。

こんな流れでやってみます

  • branchでいろいろやる
  • add、commit、pushする
  • 取り消す

やってみる

pushまでやる

取り消す前にまずはpushまでやります。

※ ブランチを作成してチェックアウト
$ git checkout -b some-branch

※ 何か追加・修正したり
$ ls -al
-rw-r--r--  1 hoge  hoge   26  6 10 15:30 README.md
drwxr-xr-x  3 hoge  hoge  102  6  9 21:19 img
-rw-r--r--  1 hoge  hoge   83  6  9 21:19 index.html

※ add、commitする
$ git add .
$ git commit -m 'add file'

※ pushする
$ git push origin some-branch

github上はこんな感じになります。
Compare $ pull requestボタンが表示されてる状態ですね。
f:id:tweeeety:20150610220315p:plain

取り消す
※ 取り消すのは--deleteオプションつきでpushするだけ
$ git push --delete origin some-branch

github上もCompare $ pull requestボタンが消えるのが確認できると思います。

2. pull request出した直後に取り消し

作業してaddしてcommitしてgit push origin ブランチ名して
github上のCompare $ pull requestボタンからpull requestを出した後に取り消す方法です。

こんな流れでやってみます

  • branchでいろいろやる
  • add、commit、pushする
  • pull request出す

やってみる

pushまでやる

これは1のときと全く同じなのでそこまでやった体で行います。

pull request送る

github上のCompare $ pull requestボタンからpull request送ります。
Compare $ pull request -> Create pull requestと行うだけですね。

終わった後はこんな画面。 f:id:tweeeety:20150610220705p:plain

取り消す

上記の画面を出したまんま、先ほどの1と同じコマンドで取り消します。

※ 取り消すのは--deleteオプションつきでpushするだけ
$ git push --delete origin some-branch

すると、こんな画面になります。
f:id:tweeeety:20150610220742p:plain

pull requestを出した後は、
--deleteオプションpushを出すとclose扱いになる感じみたいですね。

まとめ

1コマンド打つだけですがコマンド上からも消せると楽ですよね!