2011-12-28 2 views
16

У меня есть удаленная ветвь с именем foo, которая не отслеживается в текущем клиенте.Я случайно создал локальную ветвь с именем origin/foo. Что теперь?

Я сделал git checkout -b origin/foo, и это создало локальную ветвь с именем origin/foo. Это выглядит плохо, поскольку до сих пор у всех моих локальных филиалов не было префикса origin/.

Я попытался удалить эту локальную ветвь, запустив git branch -d origin/foo, но он пожаловался, что ветвь не полностью объединена. Я боюсь, что если я заставлю его использовать -D, он фактически удалит удаленную ветку.

Как очистить этот беспорядок?

+0

Тем временем я переименовал его в bad_foo, пока не выясню, что делать. – ripper234

+1

Теперь, когда вы переименовали его, у вас на самом деле проблема? – Mat

+0

@Mat - теперь, когда вы упомянули об этом, я просто попытался удалить bad_foo, и он сработал. Ура! – ripper234

ответ

21

Решено, переименовав ветку, а затем удалив ее.

branch -m origin/foo bad_foo 
branch -d bad_foo 
+2

lol, обратите внимание на себя: убедитесь, что вы не в ветке, которую вы удаляете ... – Shanimal