当前位置: 首页 > 面试题库 >

如何限制提交时的文件大小?

澹台建华
2023-03-14
问题内容

提交时是否有限制文件大小的选项?

例如:文件大小超过500K会产生警告。文件大小超过10M将会停止提交。

我完全知道这个问题,从技术上讲,它是一个重复的问题,但是答案仅是 push上的解决方案,对于我的要求而言为时已晚。


问题答案:

此预提交的挂钩将执行文件大小检查:

.git / hooks / pre-commit

#!/bin/sh
hard_limit=$(git config hooks.filesizehardlimit)
soft_limit=$(git config hooks.filesizesoftlimit)
: ${hard_limit:=10000000}
: ${soft_limit:=500000}

list_new_or_modified_files()
{
    git diff --staged --name-status|sed -e '/^D/ d; /^D/! s/.\s\+//'
}

unmunge()
{
    local result="${1#\"}"
    result="${result%\"}"
    env echo -e "$result"
}

check_file_size()
{
    n=0
    while read -r munged_filename
    do
        f="$(unmunge "$munged_filename")"
        h=$(git ls-files -s "$f"|cut -d' ' -f 2)
        s=$(git cat-file -s "$h")
        if [ "$s" -gt $hard_limit ]
        then
            env echo -E 1>&2 "ERROR: hard size limit ($hard_limit) exceeded: $munged_filename ($s)"
            n=$((n+1))
        elif [ "$s" -gt $soft_limit ]
        then
            env echo -E 1>&2 "WARNING: soft size limit ($soft_limit) exceeded: $munged_filename ($s)"
        fi
    done

    [ $n -eq 0 ]
}

list_new_or_modified_files | check_file_size

上面的脚本必须另存为.git/hooks/pre-commit启用执行权限(chmod +x .git/hooks/pre-commit)。

默认的软(警告)和硬(错误)大小限制设置为500,000和10,000,000字节,但可以分别通过hooks.filesizesoftlimithooks.filesizehardlimit设置覆盖它们:

$ git config hooks.filesizesoftlimit 100000
$ git config hooks.filesizehardlimit 4000000


 类似资料:
  • 问题内容: 我正在用multer创建一个简单的文件上传系统: 一切正常,文件被上传。唯一不起作用的是最大大小的限制。我这样做是为了检查文件onfileupload start的大小,如果文件过大,它将返回false。但是文件仍然只是上传。 似乎根本没有做任何事情。我尝试了一些东西,但是什么也没有。 我究竟做错了什么?使用multer上载时如何限制文件大小? 问题答案: 新的API 没有。如果要限制

  • Kafka大约有5000万张唱片库存(即将消耗)。主题是3个分区。 我的消费应用程序: 我限制了spark streaming的消耗大小,在我的例子中,我将设置为10000,这意味着在我的例子中,它每批消耗30000条记录。 有什么方法可以让spark streaming在每个批处理中提交? Spark streaming日志,证明它每批消耗的记录num:

  • 问题内容: 我得到这个错误说 上传大约30MB的视频时, 这是设置代码 不确定如何设置maxFieldsSize属性,需要一些帮助!!! 问题答案: Express使用连接中间件,您可以使用以下命令指定文件上传大小 连接限制中间件

  • 问题内容: 最好使用写入时,我需要将文件大小限制为1 GB 。 是否可以使用或必须使用其他库? 喜欢 问题答案: 您总是可以自己写,以限制写的 字节 数。 下面假定如果超出大小,则要引发异常。 当然,您现在必须手动设置/ 链。

  • 在编写文件时,我需要将文件大小限制在1 GB以内,最好使用。 是否可以使用或者我必须使用其他库? 像

  • 问题内容: 我正在使用Windows 7和python 2.7。我想将日志文件大小限制为5MB。我的应用程序启动后会写入日志文件,然后该应用程序终止。当我的应用再次启动时,它将写入同一日志文件。因此应用无法持续运行。应用程序启动,处理和终止。 我的记录代码是: 我尝试过 RotatingFileHandler, 但是没有用 那么,如何在python中实施文件大小限制? 问题答案: 丢失并使用Rot