#cli #git
У git есть малодокументированная возможность – external commands, то есть команды определенные пользователем. Упрощено говоря, git somename это алиас для команды git-somename.
Использовать можно так:
1️⃣ Смотрим зарегистрированные пути
echo $PATH.2️⃣ Выбираем папку из 1️⃣, где мы будем создавать команду.
3️⃣ Делаем файл с нашей команда git-done и таким контентом:
#!/usr/bin/env bashDEFAULT_BRANCH=masterCURRENT_BRANCH=$(git branch | grep \* | cut -d ' ' -f2)git checkout ${DEFAULT_BRANCH}git pullgit branch -D ${CURRENT_BRANCH}4️⃣ Делаем файл исполняемым
chmod +x git-doneТак мы создали команду
git done, которая удаляет активную ветку и переключает на master. У меня это команда еще передвигает текущую задачу в следующую колонку в Jira.Обратите внимание на первую строчку #!/usr/bin/env bash, после #! (shebang) идет интепритатор. Для написания скрипта на #nodejs используется конструкция #!/usr/bin/env node
Можно установить один из готовых скриптов:
npm install -g git-open. Он будет открывать текущую ветку в вашем репозитории. ПодробностиТак же для проектов с GitHub рекомендую посмотреть cli.github.com