Eu trabalho com o desenvolvimento do Django e com o GIT por 18 meses. Durante esse período, tentei hospedar um repositório git e hoje uso o GITHUB para o trabalho. É mais fácil e economiza tempo por um pequeno custo. Veja minhas considerações:
-
A menos que você seja um especialista em Linux com experiência em GIT, é mais barato (considere que tempo é dinheiro) para hospedar seu projeto no GITHUB. Eles têm hospedagem GIT gratuita para projetos públicos (qualquer um pode clonar / separar). Eles também têm uma hospedagem GIT paga (barata) se você quiser ter um repositório privado.
-
GITHUB (ou outra empresa de hospedagem GIT) facilitará a configuração de repositórios para que você possa aprender a trabalhar com o GIT à medida que você o utiliza (em outras palavras, devido à interface da Web você não precisa aprender mais do que a sintaxe de linha de comando do GIG basig antes de usar o GIT)
-
O GIT é um sistema de versão de controle distribuído. Isto significa que todo lugar onde você coloca uma cópia do seu repositório terá o histórico completo de todo o seu código, então caso você escolha hospedar seu próprio servidor GIT, é irrelevante colocar um servidor DEV ou PRD. Na verdade, você pode colocá-lo em seu próprio notebook sem medo de perder dados, porque você também tem uma cópia em DEV e PRD. Tenha em mente que você tem que fazer PULLs em seu DEV e em seu servidor PRD do seu servidor GIT.
-
É fácil fazer scripts em TECIDO para atualizar o servidor DEV ou PRD da sua própria máquina. Tudo o que você precisa fazer é ter algo assim em seu fabfile.py:
def deploy_production(): with cd('/home/my_user/my_project'): run("git pull") # update to the newest version with prefix('source ~/.virtualenvs/my_env/bin/activate'): run('./manage.py collectstatic --noinput') def production(): """ Sets environment to production """ continue = confirm('Updating the production environment, continue?', default=False) if not continue: abort('Good bye - thanks for doing nothing on production!') env.hosts = ['my_server.my_domain.com.br'] env.key_filename = ['~/amazon/my_ssh_key.pem'] env.user = 'ubuntu' # Use this to run fabric update procedure: fab production deploy_production
- Use virtualenv e virtualenvwrapper
- crie um arquivo na raiz do projeto chamado '.gitignore' e coloque o arquivo (ou padrões de arquivo) que você não deseja gerenciar através do GIT, como: * .pyc, .idea, .DS_Store (um por linha)
Espero que ajude, boa aparência!
Se você achar útil essa resposta, atribua pontos.