[解決済み] Gitブランチの名前をローカルとリモートで変更できますか?重複
2022-07-15 06:24:33
質問
リモートブランチにすでに多くのコミットがプッシュされている場合でも、ローカルで Git ブランチの名前を変更してリモートブランチにプッシュする方法はありますか?
あるいは、新しいローカルブランチを作成し、古いローカルブランチを削除してから、リモートリポジトリでこの操作を繰り返す必要があるのでしょうか。
どのように解決するのですか?
はい。
機能
move
が存在し、ローカルでブランチの名前を変更する
git branch --move <old_name> <new_name>
が、それをプッシュするには、古いものを削除して新しいものをプッシュする必要があります。
git checkout <new_name>
git push origin [--set-upstream] <new_name>
git push origin --delete <old_name>
--set-upstream
はオプションで、新しいローカルブランチがプッシュされたブランチを追跡するように設定します。
以下のショートハンドを使うことができます。
-
ローカルに移動する (--move) :
git branch -m <old_name> <new_name>
-
新しいブランチをプッシュする (--set-upstream, オプション) :
git push origin [-u] <new_name>
-
delete (--delete) :
git push origin -d <old_name>
NBです。
torekさんのコメントに感謝します。
ところで、言及する価値のあることは、あなたが
- 上流を共有する他のユーザーに、この操作を行うことを通知し
- 示された順序でこれを行います (新しい名前を設定し、古い名前を削除します)。
1の理由は、それらのユーザーが調整する必要があるからです。
2の理由は主に効率です。ブランチ削除時にコミットを削除する上流レポにオブジェクトを再コピーする必要がなくなるからです(ほとんどのベアリポジトリはそうですし、プッシュを受け入れるほとんどのレポジトリはベアリポジトリです)。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] Git でブランチからコミットを削除する
-
[解決済み] git rebase の取り消し
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] Git フェッチ リモートブランチ
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
undefinedGitのプッシュコードには、! [rejected] master -> master (fetch first) 問題があります。
-
git pull エラー: .git/FETCH_HEAD を開けない: パーミッションが拒否されました。
-
git occurs このリポジトリで別のgitプロセスが動作しているようです。例えば、.NETで開いたエディタなど。エラー
-
Note: Git prompts このリポジトリで別の git プロセスが実行されているようです ....
-
解決策正しいアクセス権を持っていることと、リポジトリが存在することを確認してください。
-
コミットには何も追加されないが、未追跡のファイルが存在する解決策
-
[解決済み] ローカルとリモートの Git リポジトリの master ブランチの名前を変更する
-
git push please tell me who you are or git fatal: empty ident name (for <>) not llowed.
-
[解決済み] バージョン管理には、なぜタグとリリース/ベータブランチを使い分ける必要があるのでしょうか?
-
[解決済み] Git rebase が失敗しました。「次のファイルに対するローカルの変更はマージによって上書きされます。ローカルでの変更はないのですか?