2012-01-16 109 views
2

我正在开发编码测试django站点,我将其保存在bitbucket存储库中以便能够轻松地将其部署到远程服务器上,并且可能与朋友分享发展。我使用hg进行版本控制。python软件包:如何依赖最新版本的单独软件包

该网站取决于第三方应用程序(django注册),我需要为我的网站定制,所以我分叉原来的应用程序,并为它创建了第二个存储库(想法是这样我可以保留如果我只是把代码粘贴到我的主站点,加上我自己定制的代码)(你可以看到更多的细节question

我的问题是,如何我是否在我的setup.py文件中指定了需求,这样当我安装我的django站点时,我得到了第三方应用程序的最新版叉(我使用分发而不是setuptools以防万一)。

我已经试过这样:

​​

但是这让我对原来的主干上的最新命名的版本(所以甚至没有提示版本)

使用PIP但要求文件的工作很好:

hg+https://[email protected]/myuser/django-registration#egg=django-registration 

从我的分支中获取最新版本。

是否有一种方法可以直接从setup.py文件获取相同的行为,而无需首先安装站点的代码,然后运行pip install -r requirements.txt?

question是非常翔实的,但似乎建议我应该依赖版本'dev'或第三方软件包,这是行不通的(我想必须有一个特定的版本标记为dev)

而且我一个完整的新手在包装/分销/ setuptools的,所以不要憋拼写出的步骤:)

也许我应该改变我的第三方应用程序的叉setup.py文件,并确保它提到了一个版本号。通常我很想知道什么是源代码发布,而不是简单地将代码放在公共存储库上,以及我的情况(蛋文件?)中的二进制发布是什么,以及它是否更适合于我在远程部署/让我的朋友部署在他的电脑上。并且还想知道如何在我的存储库上为setup.py添加一个版本来引用它,它只是一个版本控制标记(在我的情况下为hg)?随时评论你认为对初学者包装商来说很重要的任何细节:)

谢谢!

回答

0

把这个:

dependency_links=['https://bitbucket.org/abraneo/django-registration/get/tip.tar.gz#egg=django-registration'] 

中你必须通过一个下载网址像一个dependency_links。

“abraneo”是一个分叉这个项目的人,用你的名字取代他的名字。