Quando você deseja usar uma revisão específica ou uma dependência privada em Python, geralmente você terá algo assim em seu requirements.txt:
-e git+https://github.com/rochacon/project.git@revision#egg=project-rev
Quando Pip encontrar uma dependência editável , ele recuperará esse repositório usando o VCS especificado e autenticando com SSH, fará o checkout para a revisão fornecida (ou branch padrão) e, em seguida, executará o setup.py
script. Ao executar uma atualização de requisitos, Pip tentará novamente recuperar o repo para buscar atualizações.
Isso não é rápido e para uso em produção, normalmente, você não precisa de tudo isso. Mas existe uma maneira simples de tornar as coisas um pouco mais rápidas: use o recurso de download do código-fonte do seu VCS (aqui, usaremos o GitHub, mas estou confiante de que o BitBucket e outros serviços terão algum recurso semelhante).
A mesma dependência seria semelhante a:
https://github.com/rochacon/project/archive/revision.tar.gz#egg=project-rev
Agora, pip apenas baixa um tarball e executa seu setup.py
script, semelhante a como ele recuperaria dependências do PyPI.
Para repositórios privados, você pode usar a autenticação básica para autenticação, como:
https://user:pass@github.com/rochacon/project/archive/revision.tar.gz#egg=project-rev
Recomendo que você crie uma conta company-pip no GitHub com acesso somente leitura exclusivamente para isso, pois essas credenciais acabarão com a versão do arquivo de requisitos do seu projeto.