Is it possible to deploy a website using git push
? I have a hunch it has something to do with using git hooks to perform a git reset --hard
on the server side, but how would I go about accomplishing this?
Git deployment If you want to pull the latest version of the repo, you run git pull . If you want to share changes with others, you run git push . Since only changesets are uploaded or pulled, these operations are very fast. However, many people don't know that they can deploy with Git just as easily.
In the command line, navigate to the root directory of your project. Initialize the local directory as a Git repository. To create a repository for your project on GitHub, use the gh repo create subcommand. When prompted, select Push an existing local repository to GitHub and enter the desired name for your repository.
I found this script on this site and it seems to work quite well.
On your local copy, modify your .git/config file and add your web server as a remote:
[remote "production"] url = username@webserver:/path/to/htdocs/.git
On the server, replace .git/hooks/post-update with this file (in the answer below)
Add execute access to the file (again, on the server):
chmod +x .git/hooks/post-update
Now, just locally push to your web server and it should automatically update the working copy:
git push production
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With