External VCS

Using external version control systems with PythonAnywhere

Rather than uploading and downloading files manually, you might prefer to pull in a whole repository of source code from somewhere like GitHub or BitBucket.

Bash consoles — create them from the Consoles page — include popular source control clients: git, hg and svn.

If you're pulling in from a private git repo on GitHub, you may need to setup a new ssh key, and copy & paste it into your GitHub account's authorised keys.

ssh-keygen
cat ~/.ssh/id_rsa.pub

Check out the GitHub help pages for more info.

Free account restrictions

Be aware that free users are restricted to an allowlist of sites, and to the HTTP/HTTPS protocol. We also allow the pure-git protocol to certain popular services like github and bitbucket.

So you should be able to use bitbucket or github as normal. If you're storing your git or hg repository on your own server, then you'll need to use https in your repo URLs instead of the git@ syntax...

Github now require token-based authentication for https access to repositories. They have a help page here that covers how to configure and use token-based authentication.