1.2 KiB
1.2 KiB
Be warned that the sed
command used will overwrite the entire line when the string is found.
If you want to add a git hash or version to an environment file, such as in a Laravel project, you can use this:
Filename: .git/hooks/post-commit
#!/usr/bin/env bash
SHORT_HASH=$(git rev-parse --short HEAD)
sed -i "/^GIT_HASH=\".*\"/ s//GIT_HASH=\"${SHORT_HASH}\"/" .env
If you would like to have which branch you are using written to the environment file every time you checkout a new branch, you can use this:
#!/usr/bin/env bash
GIT_BRANCH=$(git branch --show-current)
if [ -n "$GIT_BRANCH" ]; then
sed -i "/^GIT_BRANCH=\".*\"/ s//GIT_BRANCH=\"${GIT_BRANCH}\"/" .env
else
sed -i "/^GIT_BRANCH=\".*\"/ s//GIT_BRANCH=\"\"/" .env
fi
If you would also like to have the git tag written to the environment file, you can use this:
#!/usr/bin/env bash
GIT_TAG=$(git tag --points-at HEAD)
#GIT_TAG=$(git describe --exact-match --tags --abbrev=0 2>&1) # alternative way of getting the tag, potentially less stable
if [ -n "$GIT_TAG" ]; then
sed -i "/^GIT_TAG=\".*\"/ s//GIT_TAG=\"${GIT_TAG}\"/" .env
else
sed -i "/^GIT_TAG=\".*\"/ s//GIT_TAG=\"\"/" .env
fi