[解決済み] Gitブランチをローカルやリモートで削除するには?
質問
ローカルとリモートの両方でブランチを削除したいのですが、どうすればいいですか?
リモートブランチの削除の試行失敗
$ git branch -d remotes/origin/bugfix
error: branch 'remotes/origin/bugfix' not found.
$ git branch -d origin/bugfix
error: branch 'origin/bugfix' not found.
$ git branch -rd origin/bugfix
Deleted remote branch origin/bugfix (was 2a14ef7).
$ git push
Everything up-to-date
$ git pull
From github.com:gituser/gitproject
* [new branch] bugfix -> origin/bugfix
Already up-to-date.
をうまく削除するためには、どうしたらよいでしょうか。
remotes/origin/bugfix
ブランチをローカルとリモートの両方で使用できますか?
解決方法は?
エグゼクティブサマリー
$ git push -d <remote_name> <branchname>
$ git branch -d <branchname>
注
ほとんどの場合
<remote_name>
となります。
origin
.
ローカルブランチの削除
を削除するには ローカル ブランチは、以下のいずれかを使用します。
$ git branch -d <branch_name>
$ git branch -D <branch_name>
-
は
-d
オプションは--delete
これは、そのブランチが上流のブランチに完全にマージされている場合にのみ削除されます。 -
は
-D
オプションは--delete --force
これは、マージされたステータスに関係なくブランチを削除します。man git-branch
] -
現在
Git v2.3
,
git branch -d
(削除) を尊重することを学びました。-f
(力)旗を立てた。 - 現在選択されているブランチを削除しようとすると、エラーが表示されます。
リモートブランチの削除
現在 Git v1.7.0 を削除することができます。 リモート を使用して分岐します。
$ git push <remote_name> --delete <branch_name>
よりも覚えやすいかもしれません。
$ git push <remote_name> :<branch_name>
で追加された Git v1.5.0 リモートブランチやタグを削除するには、"。
で始まる
Git v2.8.0
を使用することもできます。
git push
と共に
-d
オプションのエイリアスとして
--delete
. したがって、インストールされているGitのバージョンによって、簡単な構文と難しい構文のどちらを使うべきかが決まります。
リモートブランチの削除 [2010年1月5日のオリジナルアンサー]について
の第3章より プロGit Scott Chaconによるものです。
<ブロッククオートリモートブランチの削除
たとえば、ある機能を完成させ、それをリモートのメインブランチ (あるいは安定版のコードラインがあるブランチ) にマージしたとしましょう。リモートブランチを削除するには、次のようなややこしい構文を使います。
git push [remotename] :[branch]
. サーバーからserver-fixブランチを削除したい場合は、次のように実行します。
$ git push origin :serverfix
To [email protected]:schacon/simplegit.git
- [deleted] serverfix
ブームです。もうあなたのサーバにブランチは必要ありません。このコマンドは必ず必要になるし、構文も忘れてしまうので、このページをドッグイヤーしておくとよいでしょう。このコマンドを覚える方法は
git push [remotename] [localbranch]:[remotebranch]
の構文は、先ほど少し説明したとおりです。もし[localbranch]
の部分は、基本的に「私の側を何もしないで、それを[remotebranch]
."
私が発行した
git push origin: bugfix
で、見事に成功しました。Scott Chaconの言うとおりです。
犬耳
そのページ(またはStack Overflowでこれに答えることで事実上の犬耳)を作成しました。
次に、他のマシンでこれを実行します。
# Fetch changes from all remotes and locally delete
# remote deleted branches/tags etc
# --prune will do the job :-;
git fetch --all --prune
を使用して変更を伝搬させます。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git, fatal: リモートエンドが予期せずハングアップしました。
-
[解決済み】GitHubのメッセージの意味: メールのプライバシー制限のためプッシュが拒否されました。
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み】「オリジン/マスターへのプッシュが拒否されました」というエラーが常に発生するのはなぜですか?
-
[解決済み】Githubエンタープライズ - リモート。Git の操作でパスワード認証が利用できない
-
Gitのプッシュでエラーが発生! [リモート拒否] master -> master (pre-receive hook declined) error: failed to push some refs to .......
-
[解決済み] 無効なVCSルートマッピング - 私のプロジェクトで3つのエラーが発生しました。
-
[解決済み] VSTS Git Fetch Failed with exit code: 128
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] Gitのプッシュエラーです。Unable to unlink old (Permission denied)です。