git push
ローカルリポジトリのコミットをリモートリポジトリに送信します。変更を他のメンバーと共有したり、バックアップするために使います。
構文
git push [<remote>] [<branch>] git push はローカルでのコミットをリモートリポジトリ(GitHub、GitLab など)に送信します。チーム開発では、作業が完了したら git push でメンバーと共有します。
基本的な使い方
# 現在のブランチをリモートの同名ブランチにプッシュ
git push
# リモートとブランチを明示的に指定
git push origin main
# 初回プッシュ時:トラッキング設定と同時にプッシュ
git push -u origin feature/login
よく使うパターン
# 新しいブランチをリモートに作成してプッシュ
git switch -c feature/new-feature
# ... 開発 ...
git push -u origin feature/new-feature
# リモートブランチを削除
git push origin --delete feature/old-feature
# タグをプッシュ
git push origin v1.0.0
git push --tags # すべてのタグ
注意点
強制プッシュについて
# 危険: 履歴を強制上書き
git push --force
# 推奨: 他の人が更新していない場合のみ実行
git push --force-with-lease
main や develop など共有ブランチへの強制プッシュは、他のメンバーの作業を壊す可能性があります。自分専用のブランチ以外では原則使わないでください。
リジェクトされたとき
! [rejected] main -> main (non-fast-forward)
このエラーはリモートの方が新しいコミットを持っている場合に出ます。先に git pull でリモートの変更を取り込んでから再度プッシュします。
git pull --rebase
git push