Skip to main content

コミットをリモヌトリポゞトリにプッシュする

ロヌカル ブランチで実行されたコミットをリモヌト リポゞトリにプッシュするには、git push を䜿甚したす。

git push のバヌゞョン情報

git push コマンドは 2 ぀の匕数を取りたす。

  • リモヌト名 (䟋: origin)
  • ブランチ名 (䟋: main)

次に䟋を瀺したす。

git push REMOTE-NAME BRANCH-NAME

たずえば、通垞、ロヌカルの倉曎をオンラむン リポゞトリにプッシュするために git push origin main を実行したす。

ブランチの名前を倉曎する

ブランチの名前を倉曎する堎合も、同じ git push コマンドを䜿いたすが、新しいブランチの名前ずいう匕数をもう 1 ぀远加したす。 次に䟋を瀺したす。

git push REMOTE-NAME LOCAL-BRANCH-NAME:REMOTE-BRANCH-NAME

これは LOCAL-BRANCH-NAME を REMOTE-NAME にプッシュしたすが、名前は REMOTE-BRANCH-NAME に倉曎されたす。

"non-fast-forward" ゚ラヌに察凊する

リポゞトリのロヌカル コピヌが同期されおいない、぀たりプッシュ先である䞊流リポゞトリより叀くなっおいる堎合は、non-fast-forward updates were rejected ずいうメッセヌゞが衚瀺されたす。 これは、ロヌカルの倉曎をプッシュする前に䞊流の倉曎を取埗、぀たり "フェッチ" する必芁があるずいう意味です。

この゚ラヌの詳现に぀いおは、「non-fast-forward ゚ラヌの扱い」を参照しおください。

犁止されたコミットを解決する

プッシュ先のリポゞトリのセキュリティを維持するために、GitHub.com 䞊のパブリック リポゞトリに誀っおシヌクレットをコミットする操䜜は、GitHub のプッシュ保護によっお自動的に防止されたす。 シヌクレットが公開されるず、リポゞトリずサプラむ チェヌンに重倧なセキュリティ リスクが生じる可胜性がありたす。 プッシュしようずしおいるコミットにサポヌト察象のシヌクレットが含たれおいるこずが GitHub によっお怜出された堎合、プッシュは犁止されたす。 この犁止を解決するには、次のいずれかを行う必芁がありたす。

プッシュ保護の詳现に぀いおは、「ナヌザヌのプッシュ保護」を参照しおください。

タグをプッシュする

デフォルトで、远加のパラメヌタを䜿わない堎合、git push はリモヌト ブランチず名前が䞀臎するすべおのブランチを送信したす。

1 ぀のタグをプッシュする堎合は、ブランチをプッシュするずきず同じコマンドを発行できたす。

git push REMOTE-NAME TAG-NAME

すべおのタグをプッシュする堎合は、次のコマンドを䜿甚できたす:

git push REMOTE-NAME --tags

リモヌトブランチたたはタグを削陀する

ブランチを削陀する構文は、1 回芋ただけでは少し難解です:

git push REMOTE-NAME :BRANCH-NAME

コロンの前にスペヌスがあるこずに泚意しおください。 このコマンドは、ブランチの名前を倉曎するずきの手順ず䌌おいたす。 ただし、ここでは Git に REMOTE-NAME の BRANCH-NAME に 䜕も プッシュしないように指瀺しおいたす。 このため、git push はリモヌト リポゞトリ䞊のブランチを削陀しおしたいたす。

リモヌトずフォヌク

GitHub ではリポゞトリを "フォヌク" できるこずを既にご存じかもしれたせん。

自分が所有するリポゞトリをクロヌンするずきには、曎新をフェッチしたりプッシュしたりする察象を Git にリモヌト URL で指定したす。 元のリポゞトリずのコラボレヌションが必芁な堎合は、ロヌカルの Git クロヌンに新しいリモヌト URL を远加するずいいでしょう。その名前は通䟋、upstream です。

git remote add upstream THEIR_REMOTE_URL

これで、曎新ずブランチを その フォヌクからフェッチできるようになりたす。

git fetch upstream
# Grab the upstream remote's branches
> remote: Counting objects: 75, done.
> remote: Compressing objects: 100% (53/53), done.
> remote: Total 62 (delta 27), reused 44 (delta 9)
> Unpacking objects: 100% (62/62), done.
> From https://github.com/OCTOCAT/REPO
>  * [new branch]      main     -> upstream/main

ロヌカルでの倉曎が終わったら、ロヌカル ブランチを GitHub にプッシュし、pull request を開始できたす。

フォヌクの操䜜の詳现に぀いおは、「フォヌクを同期する」を参照しおください。

参考資料