我的团队正在开始一个新的Python项目.我们将使用Git和一个中央存储库.每个开发人员都将使用本地virtualenv,并从中央仓库推送/拉动到本地仓库.
使用此设置,可能的情况如下:
开发人员A安装一个包并编写一些使用它的代码.
他/她将代码推送到中央仓库.
开发人员B提取代码并开始工作.
开发人员B在本地运行项目并获取ImportError,因为他/她没有安装Developer A引入的新依赖项.
我的问题是:如何在所有开发人员之间同步项目依赖项?
我考虑的方法:
之前任何git push
的开发者进行git freeze > requirements.txt
.该文件与代码一起被推送.
在任何之后git pull
,开发人员执行git install -r requirements.txt
.
这种做法是否可行?推荐吗?有更好的方法吗?
我会使用virtualenv并创建一个需求文件
pip freeze > requirements.txt
您添加到git仓库时,每次需要新的包时,都应将其添加到需求文件中.当开发人员拉动他们可以运行
pip install -r requirements.txt
我认为这是最合乎逻辑的方法,也是我的团队多次使用的方法.