Я использую этот небольшой сценарий для слияния текущего ответвления в соединительную линию. Имя ответвления взято от аргументов. Как я могу взять его от git branch
?
#!/bin/bash
git checkout $1
nosetests
git checkout master
git merge $1
git push
git checkout $1
Если бы все, что Вы хотите, является названием тока HEAD
, я хотел бы сказать Вам приблизительно
git rev-parse --abbrev-ref HEAD
( Источник )
Реализованный это в Python.
#!/usr/bin/python3
from subprocess import check_output
out = check_output(["git", "branch"]).decode("utf8")
current = next(line for line in out.split("\n") if line.startswith("*"))
print(current.strip("*").strip())
>>> from subprocess import check_output
>>> check_output(["git","symbolic-ref", "--short", "HEAD"]).decode("utf8")[0:-1]
'master'
более короткая версия в Python.