zoukankan      html  css  js  c++  java
  • Linux下基于HTTP协议带用户认证的GIT开发环境设置

    Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib 里面配置好相应的 SSH Key 就可以。

    由于现在开发环境的特殊情况,我们需要在 Linux 命令行开发环境下,不能使用 SSH 方式,而只能使用 HTTP 协议进行安全访问,并且需要对开发者进行认证,并且开发者在本地开发环境中的用户名和密码需要加密存储。

    接下来我就简单介绍我们的开发团队是如何在 Linux 命令行环境下进行 GIT 开发环境配置。

    1. 创建 用户名/密码 文件(明文密码)
    在自己的 $HOME 目录下,编辑 .netrc 文件,内容如下:

    1
    2
    machine git.xxxxx.net
        login xxx@xxx.com password xxxxxx

    2. 创建 GnuPG 密钥
    在自己的$HOME 目录下,执行命令:

    1
    2
    gpg --gen-key
    注:默认回车即可,RSA密钥选择1024,2048太慢,但安全性好

    可以使用以下命令查看已生成的密钥:

    1
    gpg --list-key

    3. 加密 用户名/密码 文件
    在自己的 $HOME 目录下,执行命令:

    1
    2
    gpg -o ~/.netrc.gpg -er yourname ~/.netrc
    注:执行完成后,可以删除明文密码文件 .netrc

    4. 设置用户的 Git 配置
    在自己的 $HOME 目录下,执行命令:

    1
    2
    3
    4
    5
    #此方法会缓存用户名/密码,不需要每次都输入
    git config --global credential.helper 'store'
     
    #此方法需要每次都输入用户名/密码
    #git config --global credential.helper 'netrc -f ~/.netrc.gpg -d'

    此时可以编辑 .gitconfig 文件,填写更多信息:

    1
    2
    3
    4
    5
    6
    7
    8
    [user]
        name = XXX
        email = xxx@xxx.com
    [core]
        excludesfile = /home/xxx/.gitignoreglobal
    [credential]
        helper = store
        #helper = netrc -f ~/.netrc.gpg -d

    5. 开始 GIT 环境

    注:需要使用新版本Git(我使用的是2.2.2),同时将 git-credential-netrc 脚本拷贝到Git安装目录(libexec/git-core)

  • 相关阅读:
    01Python基础_02变量
    01Python基础_04输入输出方式
    01Python基础_03运算符
    Spring Cloud 入门教程 搭建配置中心服务
    Spring Cloud入门教程Hystrix断路器实现容错和降级
    Spring Boot 2.0.1 入门教程
    Spring Cloud入门教程Ribbon实现客户端负载均衡
    Spring Cloud 入门教程 Eureka服务注册与发现
    代理模式
    最短路径算法——Dijkstra and Floyd算法
  • 原文地址:https://www.cnblogs.com/100thMountain/p/4765985.html
Copyright © 2011-2022 走看看