を使用してローカルリポジトリにコードを2回以上コミットしました
git commit -m "message 1"
git commit -m "message 2"
git commit -m "message 3"
今私は次のSHAで3つのコミットを持っています
commit-1 SHA1
commit-2 SHA2
commit-3 SHA3
しかし、私はcommit-2
gitpushを使用してリモートリポジトリにのみプッシュしたいと思います。
git pushを実行すると、すべてのコミットがプッシュされます。
また、次のコマンドも試しました。
git push SHA2
しかし、これはすべてのコミットもプッシュしました。
これcommit-2
をリモートリポジトリにのみプッシュする方法は?
git rebase -i
commit2をorigin/yourBranch
。の後の最初のコミットにするために、最初にブランチに移動する必要があります。
x--x--C1--C2--C3 (B)
|
(origin/B)
git rebase -i C1~
x--x--C2'--C1'--C3' (B)
|
(origin/B)
次に、そのコミットをプッシュできます。
「git-特定のコミットをプッシュする」を参照してください。
git push <remotename> <commit SHA>:<remotebranchname>
# Example
git push origin 712acff81033eddc90bb2b45e1e4cd031fefc50f:master
選択したコミットまで、すべてのコミットをプッシュします。
ただし、コミットは最初のものであるため、そのコミットをプッシュするだけです。
プッシュされたコミットのSHA1が変更されるため、チェリーピッキングはお勧めしません。最終的にブランチ全体をプッシュすると、コミットが重複することになります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加