Программно проверить, не отключена ли HEAD? - PullRequest
0 голосов
/ 07 сентября 2018

Я хочу знать, нахожусь ли я в состоянии "HEAD detached" в скрипте.

В настоящее время я анализирую вывод git status, но мне не нравится это делать, потому что я слышал, что этоплохая практика разбора вывода Git, предназначенного для человека - я хочу, чтобы дружественный к программе интерфейс сообщал мне, отключен ли HEAD.Я также не хочу вручную изучать .git/HEAD или анализировать git description или git branch.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Самая простая команда, вероятно, выглядит так:

$ git symbolic-ref -q HEAD

и проверьте статус выхода: 0 означает нормальный; 1 отсоединено.

Из документов git-symbolic-ref:

-q, --quiet
   Do not issue an error message if the <name> is not a symbolic ref
   but a detached HEAD; instead exit with non-zero status silently.
0 голосов
/ 07 сентября 2018

Программно вам нужна оболочка для протокола Git.

Например, по GitPython вы можете узнать, откреплено ли репо или нет repo.head.is_detached

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