.gitconfig "плохая строка конфигурации" из-за псевдонима - PullRequest
0 голосов
/ 10 июля 2019

Я расширил .gitconfig ежедневным псевдонимом, который работает в командной строке.Команда:

git log --since '2 day ago' --author='\(MYSURNAME\)\|\(mysurname\)'

Из-за того, что я объединяю Pull Requests через Bitbucket и фиксирую напрямую из командной строки, я могу найти свое имя в журнале Git в нижнем или верхнем регистре ...Поэтому я использую выше "regex" на переключателе --author.В любом случае, команда отлично работает в командной строке.Если я использую команду как псевдоним в моем глобальном .gitconfig, я получаю следующую ошибку:

fatal: неверная строка конфигурации 53 в файле ...

Который указывает вновь добавленный псевдоним.Мой .gitconfig:

[alias]
    d = difftool
    graph = log --graph --pretty=format:'%Cgreen%h%Creset -%C(yellow) %d%Creset %s %sCgreen(%cr) %C(bold magenta)<%an>%Creset' --abbrev-commit --date=relative 
    daily = log --since '2 day ago' --author="\(MYSURNAME\)\|\(mysurname\)"

Должен ли я выполнять специальный вид экранирования при использовании псевдонима такого типа?

Thx.

1 Ответ

1 голос
/ 10 июля 2019

Когда Git читает файл конфигурации, обратные слэши, даже если они находятся внутри кавычек, являются символами введения escape-последовательности.В этом случае вторым после обратной косой черты является символ, который входит в конечный псевдоним.Следовательно, вам нужно две обратные косые черты для создания одной обратной косой черты в команде, которая запускается:

daily = log --since '2 day ago' --author="\\(MYSURNAME\\)\\|\\(mysurname\\)"

(В оболочках, подобных Unix, правила отличаются от правил в файлах .git/config, так что не простослепо использовать то же правило для взаимодействий командной строки.)

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