2

я получаю следующий результат, когда я делаю:Как удалить ветку конфликта Git

git branch 
somebranch 
anotherbranch 
* master 
master - [email protected]'s conflict 09.04.2016_15.02.31 

Так что эта отрасль конфликт в конце концов? Я не знаю, как это проверить, как посмотреть, что в нем и как его удалить (что в конечном итоге я хочу сделать).

P.S. Это произошло некоторое время назад, я не могу вспомнить, как сейчас. Я оставил его, но он беспокоил меня, поэтому я хочу исправить его сейчас.

Обновление: ответ Торека помог мне. Я не смог найти файл .git/packed-refs. Я нашел каталог .git/refs/heads и удалил там ненужный файл/ветвь. Кажется, это исправлено.

re: Причина, которую я использую редактор Atom (из github), и я установил пакет для выполнения git-команд из редактора. Я думаю, что этот пакет, вероятно, создал эту ветку конфликта.

+0

вы можете показать вывод 'статуса мерзавца '? –

+0

Интересно, что показывает 'ls .git/refs/heads'? – 1615903

+0

git status показывает: 'На главном сервере Ваша ветка обновлена ​​с 'origin/master'. ничего не совершить рабочий каталог clean' – Cyrus

ответ

2

Пространство не является юридическим символом в имени ветки Git.

Это означает, что если Git сам сделал эту ветку, вы нашли ошибку в Git. (Поздравляю!) Скорее всего, хотя это была неудачная программа, которая считала, что она знает лучше, чем Гит, прокралась за спиной Гита и создала эту ветку ... и поскольку пространство не является юридическим персонажем в ветке Гит, вам, возможно, придется подкрасться за спиной Джита снова, чтобы удалить его.

Для , что использовать текстовый редактор, который не будет вставлять спецификаций (знаки порядка байтов), и конвертировать простые текстовые файлы в Unicode, редактировать .git/packed-refs. Если есть строка с именем фиктивной ветви, удалите эту строку (или измените имя на что-то более подходящее) и напишите файл. Выйдите из редактора, когда закончите. Затем проверьте файл в .git/refs/heads с таким именем (включая встроенные пробелы): если он существует, удалите его (или переименуйте его в нечто более подходящее).

Название фиктивной ветви должно существовать, по крайней мере, в одном и, возможно, в обоих местах, иначе Git не найдет его в качестве имени ветки.

У вас также может быть файл в .git/logs/refs/heads/ с тем же фиктивным именем. Если это так, этот файл должен получить то же лечение (удалить или переименовать).

(Обратите внимание, что каталог .git появляется в верхнем уровне вашего рабочего дерева. git rev-parse --git-dir покажет путь к нему, даже если вы находитесь в поддиректории.)

+0

я не мог найти файл '.git/уплотненный refs'. Я нашел каталог '.git/refs/heads' и удалил там ненужный файл/ветвь. Кажется, это исправлено. re: Причина, редактор, который я использую, - это Atom (из github), и я установил пакет для выполнения git-команд из редактора. Я думаю, что этот пакет, вероятно, создал эту ветку конфликта. – Cyrus

+0

Это нормально, если упакованный файл refs не существует, это означает, что нет упакованных ссылок, так что все готово.Re atom, я не использовал его сам, но похоже, что он может редактировать текстовые файлы, не испортив их. (TextEdit на Mac может тоже, но вы должны продолжать бить его по голове, и даже vim будет автоконвертировать файлы, когда я этого не хочу. :-) Очень плохие случаи - это редакторы, которые просто молча заменяют обычный текст богатыми -text или добавить бессмысленные спецификации.) – torek