使用特定 SVN 版本时,PIP 总是重新安装包

2023-12-31

当指定特定 SVN 修订版时,PIP 始终下载并安装包(显着减慢同步过程)。

有没有解决的办法?正常情况下pip会检测到环境中已经安装了该包并提示使用--upgrade.

我的 pip_requirements 文件具有以下行:

svn+http://code.djangoproject.com/svn/django/trunk/@16406#egg=Django1.4A

感谢您的帮助!

Answer

  • 必须将 Egg 名称指定为确切的 Python 包名称。
  • 不得使用-e flag.
  • 不适用于 PIP 版本0.7,适用于1.0.2.

实际上,上周末我一直在研究 pip,我相信我已经解释了你的 pip 问题。问题只是 pip 本身的限制。由于安装过程的工作方式#egg=[egg-name]部分必须正确命名为 setup.py 名称 kwarg 中标识的实际项目名称(这是 PyPI 上已知的名称)。

简答

您的线路:

svn+http://code.djangoproject.com/svn/django/trunk/@16406#egg=Django1.4A

应该:

svn+http://code.djangoproject.com/svn/django/trunk/@16406#egg=django

长答案

根据我的理解,安装过程实际上执行了以下操作(如果我错了,Ian Bicking 会让我失望:-P)

  1. 当它得到您的要求时,它会根据 vcs+[url] 结构确定该链接指向它所知道的 VCS。
  2. 它将代码检出到您环境中的临时目录中。
  3. 它运行 setup.py (我相信 Egg_info 和 install)
  4. 签出代码的临时目录已从文件系统中删除

因此,一旦步骤 3 完成并且您签出的源已安装,Django 就会将 pip 视为django(不区分大小写)。但是,如果您保留当前的需求行,pip 将搜索Django1.4A。找不到与该名称匹配的包,它将再次检查源代码并尝试安装它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用特定 SVN 版本时,PIP 总是重新安装包 的相关文章

随机推荐

  • 使用 jQuery Mobile 的动态页面

    我已经使用 jQuery 有一段时间了 并且迈出了使用 jQuery Mobile 的第一步 我使用index html作为我的应用程序的jQuery Mobile和设计 它在加载后立即调用content php 所有页面的列表视图 中的内
  • 在 C++ 的动态内存分配(堆)中,“删除”运算符实际上是如何在幕后工作的?

    我不明白 删除 运算符在 C 中是如何在幕后实际实现的 例如 class Node int i Node left right int main Node a new Node somehow the object a is initial
  • 合并两个 Git 存储库而不破坏文件历史记录

    我需要将两个 Git 存储库合并到一个全新的第三个存储库中 我发现了许多关于如何使用子树合并来执行此操作的描述 例如雅库布 纳伦布斯基的回答 https stackoverflow com a 1426163 on 如何合并两个 Git 存
  • 跟踪视频中的眼睛瞳孔

    我正在开展一个项目 旨在追踪眼睛瞳孔 为此 我制作了一个头戴式系统来捕获眼睛的图像 硬件部分我已经完成了在软件中被击中部分 我在用opencv 请让我知道跟踪瞳孔最有效的方法是什么 霍夫圆表现不佳 之后我也尝试过HSV过滤器 这是代码和 链
  • 在 onStop 之前隐藏视图?

    当用户按下主页按钮时 调用 onStop 方法 系统会截取屏幕截图 当用户按住主页按钮 在 Android 手机上 时 可以在打开的应用程序中看到屏幕截图 我的问题是如何防止任何可以拿起手机并按住主页按钮的人看到敏感数据 想象一下 应用程序
  • 它是可调用损失函数(以函数的形式)的 TensorFlow 最佳实践吗?除了 Eager Execution 兼容性之外,还有其他优点吗?

    热切执行要求传递给任何优化器的任何损失都可以被调用 即以函数的形式 所以这没问题 def loss function return tf reduce mean tf nn sampled softmax loss weights soft
  • glibc的写入是如何工作的?

    我尝试编译一个简单的程序 名为write with nostdlib 但我收到错误 path to file 3 undefined reference to write 我想write是 Unix 的东西并且一直存在 但显然不是 事实证明
  • 解析一个数字但保留负数

    我正在尝试将数字取消格式化为其原始形式 但保留它是否为负数 堆栈溢出上的某人引导我找到了这段代码 该代码工作得非常好 但它没有保留负数 有人能帮我更好地解决这个问题吗 EDIT 对于美元货币 普通数字 Example 1 234 1234
  • 如何更新 OpenJDK 的时区信息?

    如何更新 OpenJDK 的时区信息 Oracle 推出了 tzupdater 但它受到他们的许可证的约束 所以我不想使用它 我正在寻找一个开源替代方案 它允许我只更新时区信息而不是整个 JRE Azul 最近发布了一个开源工具来更新 TZ
  • 用随机数据填充表

    我有如下两张表 区域 表 AreaKey AreaID
  • 以编程方式将 NSScrollView 滚动到右侧

    一切都在标题中 我想以编程方式滚动NSScrollView向右 这样我就可以看到文档的结尾 我试过这个 let width scrollView frame size width let height scrollView frame si
  • 无法运行“phonegap run android”,抛出异常

    我想开始使用 Phonegap 开发东西 我按照他们网站上的说明进行操作 http phonegap com install http phonegap com install 当我执行 phonegap run android 时 它给了
  • 避免PHP执行时间限制

    我需要用 PHP 语言创建一个脚本来执行数字排列 但 PHP 的执行时间限制设置为 60 秒 我怎样才能运行脚本 以便在需要运行超过60个sesunde时 不被服务器中断 我知道我可以更改 php 中的最大执行时间限制 但我想听到另一个不需
  • 获取 woocommerce 子类别产品

    我正在尝试让 woocommerce 子类别中的产品显示在主要类别下 ul class wsubcategs li a href a li ul
  • 使用 ruby​​ 加密数据,使用 Node 解密

    我想在 ruby 应用程序中加密一些数据 然后在 nodejs 应用程序中对其进行解码 我一直在尝试让它发挥作用 现在我只是尝试用两种语言加密同一段数据以获得相同的结果 但我似乎无法做到这一点 js var crypto require c
  • 在 Log4j2 中扩展 PatternLayout

    自从 Log4J2 以来org apache logging log4j core layout PatternLayout班级是final 我无法扩展它来为我的创建标头CSV 我引用了文档 它没有提供有关如何扩展现有布局的信息 http
  • 具有状态存储的 Kafka Streams - 应用程序重新启动时重新处理消息

    我们有以下带有两个变压器的拓扑 每个变压器都使用持久状态存储 kStreamBuilder stream inboundTopicName transform gt new FirstTransformer FIRST STATE STOR
  • 将文件添加到单击一次部署

    我有一个要转移到 ClickOnce 的应用程序 该应用程序有一个大小适中的数据文件夹 其中包含我需要在部署中包含的数百个文件 部署后 该文件夹需要位于与 EXE 相同的位置 我已经看到了一些关于如何执行此操作的建议 但似乎没有达成一致的方
  • og 元标签、社交按钮和 angularjs

    我正在创建一个使用多个视图的网站 标签和页面的标签通过 rootScope 变量进行更改 所以我有类似的东西 每当每个视图加载到网站上时 page title 变量都会发生变化 标题和 og title 标签也会更新 一切都按预期工作 问题
  • 使用特定 SVN 版本时,PIP 总是重新安装包

    当指定特定 SVN 修订版时 PIP 始终下载并安装包 显着减慢同步过程 有没有解决的办法 正常情况下pip会检测到环境中已经安装了该包并提示使用 upgrade 我的 pip requirements 文件具有以下行 svn http c