16

これは以前に取り上げられたことは知っていますが、次のことを試してみましたが、リモート ブランチを削除できないようです。

aly@neon:~/workspace/3DOD_VARIANCE$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/multi_gauss_at_nodes
  remotes/origin/old-state-with-mean-deviation-from-centre
  remotes/origin/variance-branch


aly@neon:~/workspace/3DOD_VARIANCE$ git branch -r -d origin/old-state-with-mean-deviation-from-centre Deleted remote branch origin/old-state-with-mean-deviation-from-centre (was 0ed90b2).


Fetching origin
From https://bitbucket.org/alykhantejani/3dobjectdetection
 * [new branch]      old-state-with-mean-deviation-from-centre -> origin/old-state-with-mean-deviation-from-centre

ご覧のとおり、ブランチが再度取得されました。私が間違っていることは何か分かりますか?

また、補足として、削除する前に、このブランチがすでに master にマージされているかどうかを確認する方法はありますか?

4

3 に答える 3

25

完全なプッシュ コマンドは次のとおりです。

git push <remote name> <local branch>:<remote branch>

そのようにリモートサーバーに「ブランチはまったくありません」を送信するだけです:

git push origin :old-state-with-mean-deviation-from-centre

補足: git は、「git branch -d」を使用すると、マージされていないブランチを削除できなくなります (とにかく削除することが本当に確実な場合は、-D を使用するように指示されます)。

git branch -d -r <branch name>また、.git フォルダー (リモート サーバー上にある実際のブランチではない) 内の参照を削除することにも注意してください。そのため、新しいフェッチによって再作成されます。

于 2013-07-09T10:52:43.243 に答える