2012-04-25 16 views
7

Tôi đã tạo một nhánh git vô tình có tên "0.2" cũng là một thẻ.Git - Không thể xóa chi nhánh từ xa

Vì vậy, tôi đã cố gắng để loại bỏ nó từ nguồn gốc:

$ git branch -rD origin/0.2 
Deleted remote branch origin/0.2 

Nhưng sau đó:

$ git fetch origin 
* [new branch]  0.2  -> origin/0.2 

Đây là lỗi tôi đã wwhen đẩy:

$ git push --force origin :0.2 
error: dst refspec 0.2 matches more than one. 

Vì vậy, tôi loại bỏ các thẻ từ xa:

$ git tag -d 0.2 
$ git push origin :refs/tags/0.2 

Vẫn không có đi:

$ git branch -rD origin/0.2 
* [new branch]  0.2  -> origin/0.2 
  1. Có một lỗi git?
  2. Tôi có làm gì sai ngoài việc có thẻ và tên chi nhánh không?
  3. Cách xóa nhánh từ xa này?
+3

bạn đã thử 'git push xuất xứ: 0.2'? –

+1

Thẻ từ xa vẫn tồn tại? cũng thử 'git remote prune origin' – CharlesB

+0

' git branch -rD origin/0.2' giống với 'git push origin: 0.2' cho phiên bản git mới nhất. Và có thẻ từ xa vẫn còn đó. Tôi cũng đã thử 'prune'. – shkschneider

Trả lời

2

Thường chạy git push --force origin :0.2 sau khi đã xóa (cục bộ và từ xa) thẻ nên thực hiện xóa chính xác.

+0

Thật vậy, làm hai lệnh của tôi cùng nhau giải quyết vấn đề. Cảm ơn – shkschneider

2

này đã làm việc cho tôi:

$ git push --delete origin refs/heads/0.2