要将 Git 仓库的上传(推送)方式从 HTTP/HTTPS 改为 SSH,

要将 Git 仓库的上传(推送)方式从 HTTP/HTTPS 改为 SSH,核心是修改远程仓库的 URL 配置。具体步骤如下:

步骤 1:查看当前远程仓库地址

首先确认当前仓库使用的远程地址是否为 HTTP 格式,执行命令:

bash

运行

复制代码
git remote -v

输出类似如下(如果是 HTTP 格式):

plaintext

复制代码
origin  https://github.com/用户名/仓库名.git (fetch)
origin  https://github.com/用户名/仓库名.git (push)

origin是远程仓库的默认名称,若你的远程仓库名称不同,需替换为实际名称)

步骤 2:获取仓库的 SSH 地址

登录你的代码托管平台(如 GitHub、GitLab、Gitee 等),进入仓库页面,找到 SSH 格式的远程地址。以 GitHub 为例,在仓库页面点击「Code」按钮,切换到「SSH」标签,复制类似如下的地址:

plaintext

复制代码
git@github.com:用户名/仓库名.git

步骤 3:修改远程仓库地址为 SSH 格式

使用 git remote set-url 命令修改远程地址,格式:

bash

运行

复制代码
git remote set-url 远程仓库名称 SSH地址

例如(默认远程名称为origin):

bash

运行

复制代码
git remote set-url origin git@github.com:用户名/仓库名.git

步骤 4:验证修改是否成功

再次执行 git remote -v 确认地址已变为 SSH 格式:

plaintext

复制代码
origin  git@github.com:用户名/仓库名.git (fetch)
origin  git@github.com:用户名/仓库名.git (push)

显示 SSH 地址即表示修改成功,后续git push会默认使用 SSH 方式。

注意:确保 SSH 密钥已配置

若首次使用 SSH 方式,可能需要先配置 SSH 密钥(否则推送会失败),步骤如下:

  1. 检查本地是否已有 SSH 密钥:

    bash

    运行

    复制代码
    ls -la ~/.ssh

    若存在 id_rsa(私钥)和 id_rsa.pub(公钥),则跳过生成步骤。

  2. 生成 SSH 密钥(若不存在):

    bash

    运行

    复制代码
    ssh-keygen -t rsa -C "你的邮箱地址"

    一路回车使用默认配置即可。

  3. 复制公钥内容:

    bash

    运行

    复制代码
    # Linux/Mac
    cat ~/.ssh/id_rsa.pub
    
    # Windows(使用Git Bash)
    cat /c/Users/你的用户名/.ssh/id_rsa.pub
  4. 在代码托管平台添加公钥:进入平台的「设置」→「SSH 密钥」→「添加新密钥」,粘贴复制的公钥内容并保存。

完成以上步骤后,即可通过 SSH 方式正常推送代码(git push)。

.net web 应用的<requestLimits maxAllowedContentLength="[desired size]">应该加在web.config文件的哪个节点下?

已完成思考

在.NET Web 应用(尤其是基于 IIS 托管的应用,如ASP.NET Web Forms、ASP.NET MVC 等)中,<requestLimits maxAllowedContentLength="[desired size]"> 用于配置 IIS 层面允许的请求内容最大长度(单位:字节),必须添加在 web.config<system.webServer> 节点下的 <security> -> <requestFiltering> 子节点中

具体位置和示例:

完整的配置层级为:configurationsystem.webServersecurityrequestFilteringrequestLimits

示例代码(设置最大请求长度为 100MB,即 104857600 字节):

xml

复制代码
<configuration>
  <!-- 其他配置节点 -->
  
  <system.webServer>
    <!-- IIS 相关配置 -->
    <security>
      <requestFiltering>
        <!-- 配置请求限制 -->
        <requestLimits maxAllowedContentLength="104857600" /> <!-- 100MB = 100 * 1024 * 1024 字节 -->
      </requestFiltering>
    </security>
    
    <!-- 其他 IIS 配置(如 modules、handlers 等) -->
  </system.webServer>
  
  <!-- 其他配置节点 -->
</configuration>

注意事项:

  1. maxRequestLength 的区别

    • maxAllowedContentLengthIIS 层面 的配置(单位:字节),控制 IIS 接收的请求体大小。

    • 若应用是ASP.NET(非ASP.NET Core),还需配合 <system.web> 节点下的 <httpRuntime> 配置 maxRequestLength(单位:KB),避免ASP.NET框架层面的限制:

      xml

      复制代码
      <system.web>
        <httpRuntime maxRequestLength="102400" /> <!-- 100MB = 100 * 1024 KB -->
      </system.web>

      两者需保持一致(或 maxAllowedContentLength 略大于 maxRequestLength 对应的字节数)。

  2. ASP.NET Core 注意 :对于ASP.NET Core 应用(通常托管在 Kestrel 而非 IIS),请求大小限制主要通过代码配置(如 services.Configure<FormOptions>),但如果部署在 IIS 上,仍需通过上述 web.config 配置兼容 IIS 的限制。

总之,requestLimits 必须放在 system.webServer/security/requestFiltering 节点下才能被 IIS 正确识别。

相关推荐
q***55581 小时前
使用 Nginx 搭建代理服务器(正向代理 HTTPS 网站)指南
运维·nginx·https
g***72701 小时前
springBoot发布https服务及调用
spring boot·后端·https
lqj_本人2 小时前
鸿蒙Qt网络通信:HTTPS握手失败与证书陷阱
qt·https·harmonyos
likuolei7 小时前
Git 与 SVN 区别
git·svn
2501_9160088910 小时前
iOS 性能测试的深度实战方法 构建从底层指标到真实场景回放的多工具测试体系
android·ios·小程序·https·uni-app·iphone·webview
原神启动110 小时前
云计算大数据——Nginx入门篇( Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装)
大数据·http·云计算
阿珊和她的猫10 小时前
HTTP 状态码 404:深入解析与实践应对
网络·网络协议·http
charlee4412 小时前
Git使用经验总结8-Git仓库历史记录清除
git·powershell·敏感信息·仓库重置·历史重写
正经教主13 小时前
【Git】Git05-04:Github分支管理与协作流程
git·github