Question: I'm ready to push my existing Django project (which i've been running in a local environment) to a Bitbucket repository so I can run it on a public server. At the moment I feel like there's a lot of files created in local development that needs to be added to `.gitignore`. 

I found [this `.gitignore` file on github](https://github.com/github/gitignore/blob/master/Python.gitignore) however I still feel it's missing some things, for example it doesn't seem to remove files from each `migrations` folders. There's also a lot of stuff there that I don't know what they do - I understand not all of it is needed. Any advice is appreciated.

Answer: 
The best example I have found is here: <https://djangowaves.com/tips-tricks/gitignore-for-a-django-project/>

This is not my work!!! I don't want to take credit for someone else's good collection! Not everything in there is relevant. The author documents it well, though, so you can boil it down to what you need.

I would also add:

```
**/migrations
*.DS_Store
**/__pycache__
**/.DS_Store

```
I actually don't know how did you add `migrations` directories. If you already committed to git with those directories, then simply add `migrations/*` to `.gitignore` and delete all the migrations folder. Then commit and push. After this, you will never see any `migrations` changes to git until you forcefully staged and commit.