hwyzw 发表于 2025-3-31 03:28:50

公司内网git访问外网设置代理:从全局到单个项目的配置

    公司内网的 git 要访问外网就需要设置代理。一般在网上所给出的设置方法是 git-- http.proxy 192.168.4.12:8080。

    可以起作用。不过,在上面的命令中,有一个 -- 。由此可以猜测,这个 -- 是一个全局配置,会对所有的提交行为都产生效果。那么,如何让它对单个项目配置生效呢?

    经过一番摸索,得知 git 提供了一个特定的命令,运行该命令后,能够看到这些相关信息:

    https://img1.baidu.com/it/u=823718870,3892285295&fm=253&fmt=JPEG&app=120&f=JPEG?w=715&h=500

    查看 file 那一项,其值有 local 和 blob 等。后面的解释将其阐述得十分清晰:

    即读取/写入当前用户的全局配置文件,该文件为~/.文件,属于某一计算机用户。

   即是读写系统全局的配置文件(/etc/ 文件,属于计算机)

    local 是当前 clone 仓库的配置文件,此配置文件位于 clone 仓库下的.git/ 目录中。

    blob 配置是另一种形式。它提供了一个 blob 大对象格式。此格式未经过验证。估计它与 local 是一样的,只是形式不同。

    https://img0.baidu.com/it/u=2853199326,1963435113&fm=253&fmt=JPEG&app=138&f=PNG?w=999&h=500

    上面各种配置应该需要充分考虑含义。

    有些是从远程仓库进行 clone 的,有些是从公司内网仓库进行 clone 的。对于从远程仓库 clone 的,需要配置网络代理才能进行拉取和提交代码的操作;而对于从公司内网仓库 clone 的,则不能配置网络代理。那么我们的操作便是如此。

    配置仅针对某个 clone 仓库的操作如下:首先进入该 clone 仓库,接着运行 git --local http.proxy 192.168.4.12:8080

    之后就可以看到 .git/ 文件中多了最下面两行
页: [1]
查看完整版本: 公司内网git访问外网设置代理:从全局到单个项目的配置