4

我试图让 Heroku采用 pip 要求的可编辑依赖项(即)。-e git://github.com/merlinares/django-registration.git#egg=django-registration

但是,即使它似乎在部署时采用了该分叉,但实际上并没有使用它。我已经检查了 site-packages 中的代码,heroku run cat .heroku/python/lib/python2.7/site-packages/registration/forms.py它不包含新代码,而只是使用以前安装的默认 django-registration 包。

但是,分叉版本似乎存在于 指定的目录中django-registration.egg-link,该目录名为:

/app/.heroku/src/django-registration

在部署(即git push heroku master)我看到:

-----> Installing dependencies using Pip (1.3.1)

   Obtaining django-registration from git+git://github.com/mattlinares/django-registration.git#egg=django-registration (from -r requirements.txt (line 12))
     Updating ./.heroku/src/django-registration clone
     Running setup.py egg_info for package django-registration

   Installing collected packages: django-registration

     Running setup.py develop for django-registration

       Creating /app/.heroku/python/lib/python2.7/site-packages/django-registration.egg-link (link to .)
       django-registration 0.8-alpha-1 is already the active version in easy-install.pth

       Installed /app/.heroku/src/django-registration
   Successfully installed django-insensitive django-registration
   Cleaning up...

我还手动尝试卸载和安装那个特定的 fork,效果如下:

(ssc)~/code/django/ssc: heroku run pip install --upgrade git+git://github.com/mattlinares/django-registration.git
Running `pip install --upgrade git+git://github.com/mattlinares/django-registration.git` attached to terminal... up, run.5704
Downloading/unpacking git+git://github.com/mattlinares/django-registration.git
  Cloning git://github.com/mattlinares/django-registration.git to /tmp/pip-qpTF2t-build
  Running setup.py egg_info for package from git+git://github.com/mattlinares/django-registration.git

Installing collected packages: django-registration
  Found existing installation: django-registration 0.8-alpha-1
    Uninstalling django-registration:
      Successfully uninstalled django-registration
  Running setup.py install for django-registration

Successfully installed django-registration
Cleaning up...

然而,我的应用程序没有使用registration我试图喂它的版本。我怀疑列出的鸡蛋heroku run ls .heroku/python/lib/python2.7/site-packages

django_registration-0.8-py2.7.egg-info        registration

django-registration.egg-link

我还尝试按照如何在 heroku cedar 堆栈上使用 virtualenv 进行 pip 卸载来清除整个 virtualenv?没有运气

我能做些什么?

4

1 回答 1

0

使用可编辑依赖项时,您必须定义标签或提交哈希。

按照你的例子:

-e git+https://github.com/merlinares/django-registration.git@3.1#egg=django-registration

或者

-e git+https://github.com/merlinares/django-registration.git@40fee813ca444236da6d66f516b869fd8ebbe9cd#egg=django-registration
于 2020-08-02T07:06:34.063 回答