Я пытаюсь написать скрипт оболочки (bash).
Цель сценария -
- , чтобы получить сообщение о последнем коммите git
- захватить любой контент внутри [] -покрытия последнего сообщения git commit
- экспортировать этот контент в переменную среды с именем GIT_COMMIT_MESSAGE_CONTEXT
Пример:
Последнее сообщение git commit= "[Stage] - gitlab trial"
Рабочий пример: экспортированная переменная среды должна быть
echo $GIT_COMMIT_MESSAGE_CONTEXT
Stage
Я нашел следующее, чтобы получить сообщение о последнем коммите git:
echo $(git log -1 --pretty=%B)
[Stage] - gitlab trial
Я новичок в bash-скриптах и, следовательно, мой тест (см. Ниже) пока что несколько неудачен. Может быть, у кого-то есть больше опыта, чтобы помочь здесь.
Мой bash-скрипт (my-bash-script.sh) выглядит следующим образом:
#!/usr/bin/bash
# get last git commit Message
last_git_commit_message="$(git log -1 --pretty=%B)"
export LAST_GIT_COMMIT_MESSAGE="$last_git_commit_message"
Я запускаю bash-скрипт в терминалеследующим образом:
bash my-bash-script.sh
После закрытия / повторного открытия Терминала я набираю:
echo $LAST_GIT_COMMIT_MESSAGE
К сожалению, безрезультатно.
Вот мои вопросы:
- Почему я не получаю эхо-переменную env после запуска bash-скрипта?
- Как вычесть содержимое [] -parenthis последнего сообщения git commit?
- Как переписать мой скрипт?