[解決済み] Git がリモートブランチの削除にコロン (:<branch>) を使う理由
2023-04-22 22:51:21
質問
なぜGitは
git push <remote> :<branch>
のように
git push origin :featureA
をクリックすると、ブランチが削除されます。
featureA
リモートサーバーから?
なぜコロンが削除フラグとして使われたのか、興味があります。
とは大違いです。
git branch -d <localbranch>
.
のようなことをしてはどうでしょうか。
git branch -d --remote origin <branchname>
とか、私の知らないコロン記号の深い意味があるのでしょうか?
どのように解決するのですか?
の意味ではなく
:
の意味そのものではなく、その前に存在するもの、むしろ存在しないものなのです。
refspecのフォーマットは
<+><source>:<destination>
(早送りでない場合はオプションの+)
というわけで、以下のようなことをすると
git push origin :featureA
のようにすると、空のソース参照を指定し、基本的にデスティネーションを "空" にするか、削除することになります。
追記
:
を指定しても、何もしないことを意味するわけではありません。これは、git に "matching" ブランチをプッシュさせます。ローカル側に存在するすべてのブランチについて、同名のブランチがすでにリモート側に存在していれば、リモート側が更新されます。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git でブランチからコミットを削除する
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
解決策 このリポジトリでは、別の git プロセスが実行されているようです。たとえば、「git commit」によって開かれたエディタなどです。
-
git pull reports エラー: :cannot open .git/FETCH_HEAD:Permission denied (.git/FETCH_HEADを開くことができません。
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] 単一のgitコミットに対して設定されたユーザーを上書きする
-
[解決済み] stash@{1}は曖昧?
-
[解決済み] バージョン管理には、なぜタグとリリース/ベータブランチを使い分ける必要があるのでしょうか?
-
[解決済み] 対話式リベースを中断する方法(--abort が効かない場合)?
-
[解決済み] Gitブランチの名前をローカルとリモートで変更できますか?重複
-
[解決済み] CVS から Git への移行: $Id$ 相当?
-
[解決済み] どのブランチとマージしたいかを言わずにpullするように言われました。