git branch -h создал ветку с именем '-h'. Это ожидается? - PullRequest
0 голосов
/ 31 октября 2018

Как видно из изображения, не знаю, как были созданы ветви -h -merged --help

Please click here for image showing all branches in local repo

Как удалить ненужные ветки [/ случайно созданные] ветки?

Обновление текст из git bash [Windows]

$ git branch -a * calc master –-help –h –merged remotes/origin/master

1 Ответ

0 голосов
/ 31 октября 2018

Вы разместили изображение, а не копировали и вставляли текст из вашего сеанса bash (я предполагаю, что это был сеанс bash), поэтому очень трудно быть уверенным в этом, но вполне вероятно, что эти ветви не с именем -h, -merged и т. Д., Но вместо этого с именем –h, –merged и т. Д. Все еще сложно сказать, но второй набор имен пишется с тире в качестве первого символа, а не с дефисом в качестве первого символа. Чертой является Unicode-символ U + 2013.

Клавиатурный метод ввода такого символа зависит от операционной системы и / или клавиатуры и / или другого программного обеспечения: здесь мало стандартов. (В MacOS самый простой способ набрать его - это удерживать нажатой клавишу option и нажать клавишу - .)

Чтобы справиться с этим программно, вы можете использовать Python. Например, в Python 3:

>>> import subprocess
>>> s = subprocess.check_output('git branch', shell=True).split(b'\n')

Печать значения в s теперь создает имена ветвей в виде списка байтовых строк. В моем случае после создания ветки с именем –merged один из них (s[5] в моем тестовом репозитории здесь):

b'  \xe2\x80\x93merged'

, которая показывает кодированную UTF-8 последовательность для тире:

>>> s[5].decode('utf8') == '  \N{en dash}merged'
True
>>> s[5].decode('utf8') == '  \u2013merged'
True

Чтобы удалить его, я могу снова вызвать git branch -D из Python:

>>> subprocess.check_call('git branch -D \N{en dash}merged', shell=True)
Deleted branch –merged (was 4ede3d42df).
0

(Обратите внимание, что в Python 2.7 все это немного отличается, поскольку встроенный строковый тип эквивалентен типу bytes, а не типу Python 2.7 unicode.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...