博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下基于HTTP协议带用户认证的GIT开发环境设置
阅读量:5098 次
发布时间:2019-06-13

本文共 1182 字,大约阅读时间需要 3 分钟。

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 环境

1
git clone

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

转载于:https://www.cnblogs.com/100thMountain/p/4765985.html

你可能感兴趣的文章
T-SQL 随机返回特定行数据和分页查询
查看>>
SpringBoot2.0之整合Kafka
查看>>
HTTP协议COOKIE和SESSION有什么区别
查看>>
k8s学习笔记-Pod资源
查看>>
iOS -- 最简单的重签名方法
查看>>
spring 的properties解析
查看>>
Linux新建用户后的必要设置
查看>>
使用 Override 和 New 关键字进行版本控制
查看>>
安装Ubuntu的那些事儿
查看>>
求m区间内的最小值-单调队列
查看>>
转: 尽己力,无愧于心 FastReport.Net 常用功能总汇
查看>>
python版本的原型模式
查看>>
热血男儿
查看>>
Safari导入书签
查看>>
微软Silverlight的崛起
查看>>
[Android游戏开发]游戏框架的搭建
查看>>
android搞的一个登录界面
查看>>
php大转盘抽奖
查看>>
mysql轮廓总结
查看>>
[CF1103B]Game with modulo
查看>>