小编pi.*_*pi.的帖子

使用Git管理大型二进制文件

我正在寻找如何处理我的源代码(Web应用程序)所依赖的大型二进制文件的意见.我们目前正在讨论几种选择:

  1. 手动复制二进制文件.
    • 亲:不确定.
    • Contra:我强烈反对这一点,因为它增加了在设置新站点/迁移旧站点时出错的可能性.建立另一个障碍.
  2. Git管理所有这些.
    • 专业:删除'忘记'复制重要文件的可能性
    • 反对:膨胀存储库并降低管理代码库和检出,克隆等的灵活性将需要相当长的时间.
  3. 单独的存储库.
    • Pro:检查/克隆源代码的速度很快,图像可以在自己的存储库中正确存档.
    • Contra:删除了在项目中拥有唯一的 Git存储库的简单性.它肯定会介绍一些我没有想过的其他事情.

您对此有何体验/想法?

另外:有没有人有多个Git存储库的经验并在一个项目中管理它们?

这些文件是程序的图像,该程序生成包含这些文件的PDF.文件不会经常更改(如年份),但它们与程序非常相关.没有文件,程序将无法运行.

git version-control binaryfiles large-files

517
推荐指数
10
解决办法
18万
查看次数

'模块对象没有属性'get'Python错误请求?

我刚刚使用'easy_insatll'安装了Requests模块,我试图运行这个tutrorial的演示代码,

import requests
payload = {'username': 'xxxx', 'password': 'xxxxx'}
r = requests.get('https://github.com/timeline.json')
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:AttributeError: easy_install

任何的想法?谢谢

python error-handling python-requests

25
推荐指数
4
解决办法
5万
查看次数

如何检测主观图像质量

对于图像上传工具,我想自动检测图像的(主观)质量,从而产生质量评级.

我有以下想法,以启发式方式实现这一点:

  • 显然将分辨率纳入评级.
  • 将其压缩为JPG(75%),将其解压缩并比较jpg大小与解压缩大小以获得比率.图像越模糊,比率越高.

显然,如果对大图像进行评级,我的方法会消耗很多周期和内存,尽管这可以在我的场景中实现(胖服务器,上传的内容不多),而且我总是可以围绕更昂贵的步骤建立"短路"如果图像超过一定的分辨率.

还有其他我可以尝试的,还是有办法更有效地做到这一点?

algorithm image image-processing

18
推荐指数
3
解决办法
1万
查看次数

排除自引用关系SQLAlchemy中的软删除项

我目前在以下方面有自我参照关系Foo:

parent_id = DB.Column(DB.Integer, DB.ForeignKey('foo.id'))

parent = DB.relation(
    'Foo', 
    remote_side=[id], 
    backref=DB.backref(
        'children', 
        primaryjoin=('and_(foo.c.id==foo.c.parent_id, foo.c.is_deleted==False)')
    )
)
Run Code Online (Sandbox Code Playgroud)

现在我试图排除任何is_deleted设置为true的孩子.我很确定问题是它是在检查is_deleted父母,但我不知道从哪里开始.

如何修改关系以使子项is_deleted不包含在结果集中?

python sql sqlalchemy

13
推荐指数
1
解决办法
1041
查看次数

/ usr/bin/env关于shebang line pecularities的问题

问题:

  • 如果你将shell脚本粘贴到shebang行中,内核会做什么?
  • 内核如何知道要启动哪个解释器?

说明:

我最近想在/ usr/bin/env周围编写一个包装器,因为我的CGI环境不允许我设置PATH变量,除了全局(当然这很糟糕!).

所以我想,"好的.让我们设置PREPENDPATH并在环绕包装器中设置PATH." 生成的脚本(此处称为env.1)如下所示:

#!/bin/bash
/usr/bin/env PATH=$PREPENDPATH:$PATH $*
Run Code Online (Sandbox Code Playgroud)

看起来它应该工作.在设置PREPENDPATH后,我检查了它们是如何反应的:

$ which /usr/bin/env python
/usr/bin/env
/usr/bin/python

$ which /usr/bin/env.1 python
/usr/bin/env
/home/pi/prepend/bin/python
Run Code Online (Sandbox Code Playgroud)

看起来绝对完美!到现在为止还挺好.但看看"Hello World!"会发生什么.

# Shebang is #!/usr/bin/env python
$ test-env.py
Hello World!

# Shebang is #!/usr/bin/env.1 python
$ test-env.1.py
Warning: unknown mime-type for "Hello World!" -- using "application/*"
Error: no such file "Hello World!"
Run Code Online (Sandbox Code Playgroud)

我想我错过了一些关于UNIX的基本内容.

我很失落,甚至看着原来的源代码后,ENV.它设置环境并启动程序(或者在我看来......).

unix linux apache environment shebang

6
推荐指数
1
解决办法
5952
查看次数

如何在发生未处理的异常时跳过sys.exitfunc

正如你所看到的,即使该计划应该已经死亡,它也会从坟墓中说出来.有没有办法在例外的情况下"取消注册"退出功能?

import atexit

def helloworld():
    print("Hello World!")

atexit.register(helloworld)

raise Exception("Good bye cruel world!")
Run Code Online (Sandbox Code Playgroud)

输出

Traceback (most recent call last):
  File "test.py", line 8, in <module>
    raise Exception("Good bye cruel world!")
Exception: Good bye cruel world!
Hello World!
Run Code Online (Sandbox Code Playgroud)

python exception atexit

4
推荐指数
1
解决办法
2983
查看次数