V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
czita
V2EX  ›  git

依赖的库比较大,提交到 GIT 上吗?

  •  
  •   czita · 129 天前 · 4371 次点击
    这是一个创建于 129 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果依赖的库在 5 个 G 以上,会提交到 git 上吗,如果不会又有什么比较好的方案处理呢?

    今天办公室在讨论这个,在想如果是局域网自己搭建的 git 可能还好,如果是外网环境 又怎么处理呢,麻烦各位大佬解惑一下你们日常是怎么处理的

    28 条回复    2024-07-04 18:49:55 +08:00
    Latin
        1
    Latin  
       129 天前   ❤️ 2
    git lfs
    czita
        2
    czita  
    OP
       129 天前
    换个角度还能用包管理器,nuget 、nexus repository 、npm 之类的,思路窄了。。
    redbule
        3
    redbule  
       129 天前   ❤️ 1
    腾讯发布了一个 https://ugit.qq.com/zh/index.html ,用 git lfs 做了大文件优化
    w568w
        4
    w568w  
       129 天前 via Android   ❤️ 1
    依赖的库是哪里来的?

    也是 git 仓库 -> git submodule
    其他来源获得 -> git lfs

    另外 5GB 肯定不是纯文本吧,资源二进制文件可以考虑用 SVN 单独管理。
    wqhui
        5
    wqhui  
       129 天前   ❤️ 1
    内部依赖仓库,自己的包或者第三方不公开的包就扔里面
    lisxour
        6
    lisxour  
       129 天前   ❤️ 2
    你说的库是 dll 这类的还是 npm 这类的还是源码类的,dll 可以 lfs ,npm 可以 npmjs ,源码可以 submodule
    clemente
        7
    clemente  
       129 天前
    google drive
    rekulas
        8
    rekulas  
       129 天前   ❤️ 1
    我们是直接推 git ,不过没这么大,1g 多点吧,时代已经变了,稳定性更重要
    darkengine
        9
    darkengine  
       129 天前
    node_modules 么 。。。
    JimMoen
        10
    JimMoen  
       129 天前   ❤️ 1
    依赖库?
    git submodule 请
    unco020511
        11
    unco020511  
       129 天前   ❤️ 1
    不是有包管理器吗
    wonderfulcxm
        12
    wonderfulcxm  
       129 天前   ❤️ 1
    git submodule 不还是在用 git 里吗?没有解决依赖的库 5 个 G 的问题,只是转移了问题。
    Morriaty
        13
    Morriaty  
       129 天前   ❤️ 1
    最后的部署方式是啥?如果是 docker ,可以考虑把这些依赖打进 base_image
    exiledkingcc
        14
    exiledkingcc  
       129 天前   ❤️ 1
    小项目用 submodule
    大项目用 repo
    skadi
        15
    skadi  
       129 天前   ❤️ 1
    头像好评,一般是子模块,git submodule.
    vincent7245
        16
    vincent7245  
       129 天前   ❤️ 1
    gt lfs
    chchwy
        17
    chchwy  
       129 天前   ❤️ 1
    包管理器,謝謝。git 還是管源碼好用
    Rorysky
        18
    Rorysky  
       129 天前   ❤️ 1
    有包管理的用包管理
    没有包管理的源码集成 或者 源码归档+编译脚本
    FengMubai
        19
    FengMubai  
       129 天前   ❤️ 1
    公共的 git 仓库平台, 可以放 git release
    luny
        20
    luny  
       129 天前   ❤️ 1
    建议源码实时编译输出依赖库。
    czita
        21
    czita  
    OP
       129 天前
    @luny #20 感谢,目前是这种方案
    czita
        22
    czita  
    OP
       129 天前
    @Morriaty #13 wpf 的项目 没用容器
    czita
        23
    czita  
    OP
       129 天前
    @rekulas #8 嗯,我们的实际也是 2 个 G 左右,就想如果很大了会怎么管理
    czita
        24
    czita  
    OP
       129 天前
    @w568w #4 WPF 项目依赖的 dll
    czita
        25
    czita  
    OP
       129 天前
    @skadi #15 谢谢! 自己养的猫随手拍的
    BaiLinfeng
        26
    BaiLinfeng  
       129 天前
    不是,这不是已经通网了吗,非要上传吗,就不能不传吗,通网了单独下载依赖,或者把依赖压缩打包起来存本地都行,为什么非想着上传依赖尼
    kaminic
        27
    kaminic  
       128 天前   ❤️ 1
    1. 预先编译好产物,然后打包产物 放 http 服务或公司内网的共享网盘之类的,算好压缩包 md5
    2. 自己项目写好 CMake 或其他工具,自动下载压缩包并比较 md5 以用作校验

    很多项目都这么干
    另外 cmake 也提供了现成的下载,md5 计算等方便功能
    smdbh
        28
    smdbh  
       128 天前
    如果是完全不改的,要我就写脚本,编译时自动下载,存放可以是公网,也可以内网。我是受不了把编译器和素材都放 git 的做法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1923 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:21 · PVG 00:21 · LAX 08:21 · JFK 11:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.