Skip to content

Instantly share code, notes, and snippets.

@codeif
Last active February 13, 2019 15:14
Show Gist options
  • Save codeif/dd40ad8036c4fb1c5cb8657f6c7410d4 to your computer and use it in GitHub Desktop.
Save codeif/dd40ad8036c4fb1c5cb8657f6c7410d4 to your computer and use it in GitHub Desktop.
git自动部署hooks
#!/usr/bin/env bash
GIT_WORK_TREE='..'
while read oldrev newrev ref
do
echo "******************** $oldrev $newrev $ref *****************************"
if [[ "$newrev" =~ ^0+$ ]]; then
exit 0
fi
echo "Commit ref received. Deploying ..."
# git --work-tree=$GIT_WORK_TREE --git-dir=$GIT_DIR checkout -f $newrev
git --work-tree=$GIT_WORK_TREE checkout -f $newrev
# cd "$GIT_WORK_TREE" && docker-compose restart web
# supervisorctl restart your-project
echo "******************** $oldrev $newrev $ref *****************************"
done

In linux server:

cd
mkdir demo
cd demo
git init --bare .git

In client:

git remote add origin remote:demo/.git
#!/usr/bin/env bash
GIT_WORK_TREE='..'
while read oldrev newrev ref
do
echo "******************** $oldrev $newrev $ref *****************************"
if [[ "$newrev" =~ ^0+$ ]]; then
exit 0
fi
echo "Commit ref received. Deploying ..."
# git --work-tree=$GIT_WORK_TREE --git-dir=$GIT_DIR checkout -f $newrev
git --work-tree=$GIT_WORK_TREE checkout -f $newrev
# cd "$GIT_WORK_TREE" && docker-compose restart web
# supervisorctl restart your-project
echo "******************** $oldrev $newrev $ref *****************************"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment