git push の使い方

リモートに送る

書き方

git push
git push -u origin ブランチ
git push origin --delete ブランチ
git push --tags
git push --force-with-lease

手元のコミットをリモートに送ります。リモートに知らないコミットがあると rejected になるので、pull してから送ります。

よく使うオプション

オプション意味
-u送ったブランチを上流として覚える(次からは git push だけでよい)
--force-with-leaseリモートが自分の知っている状態のときだけ上書きする
--forceリモートを無条件に上書きする
--tagsタグもまとめて送る
--delete ブランチリモートのブランチを消す

例

$ git push -u origin feature/searchTo github.com:example/app.git
 * [new branch]      feature/search -> feature/search
branch 'feature/search' set up to track 'origin/feature/search'.

新しいブランチを初めて送り、上流として覚えます。

$ git push

上流を覚えたブランチの新しいコミットを送ります。

$ git push --force-with-lease

rebase や --amend で作り直したブランチを送り直します。ほかの人の新しいコミットがあれば止めてくれます。

$ git push origin --delete feature/search

要らなくなったリモートのブランチを消します。

よくある間違い・注意

  • rejected と出たら、リモートに自分の知らないコミットがあります。先に git pull してから送ります。
  • --force は、ほかの人が送ったコミットを消してしまうことがあります。使うなら --force-with-lease にします。
  • main に直接 push せず、ブランチを送ってレビューしてもらうチームが多いです。

実際に打って練習する

Git コースの Lv32「届ける git push」で覚えます(第5章 遠征隊(リモート))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜10 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。

Git コマンド一覧(使い方と例)へ戻る