using git like svn
I have a Digital Ocean virtual private server (VPS) where I want to run a Python-Flask project of mine. The application works well on localhost, so it’s time to make it public.
However, it’s very likely that I will have to customize it a bit on the server, and thus I would like to get those changes on my localhost too. And vice versa, if I do some changes on localhost, I want to upload the new version to the server too. Copying everything via FTP for instance is out of the question. How to do it then?
Let’s use Git. Bitbucket offers free private repositories, so let’s profit of that :) I want to use that repo similarly to SVN: it’s the central repo, it must contain the latest version.
Let “client A” be the VPS and “client B” my home machine (see the figure). When I modify something on localhost, upload the changes to the central repo, log in to the server and download the latest edition. If I modify something on the server, upload the changes to the central repo, and download them on my localhost. This way the two clients are nicely synchronized.
How to upload?
Upload your local changes to the central repo:
$ git status $ git add -A . $ git commit -m "your commit message" $ git push $ git status
How to download?
Download changes from the central repo (update your local copy):
#!/usr/bin/env bash # git_down_from_central_repo.sh git fetch git pull git status
But… it’s SVN like this!
Works for me :)