centos git保存账户密码

代码部署到服务器后,如果有更新代码,每次都要手工上传代码,很是繁琐。

下面的方法是通过git的clone和pull来一键上传代码,首先进入到服务器web目录,然后输入以下指令来克隆项目:

git clone git@gitee.com:edward1108/wallet.git

克隆的链接有两种:https(https://gitee.com/edward1108/wallet.git)和ssh(git@gitee.com:edward1108/wallet.git),

其中https适用于方法一,ssh适用于方法二。

两种方法的比较:

方法一:通过保存账户密码进行免密pull等操作,该方法可以执行push\pull\clone等读写操作

方法二:通过保存公钥来进行免密等操作,该方法只能pull\clone等只读操作

 

方法一:

1、进入到用户根目录,cd $HOME

2、执行git config --global credential.helper store命令

3、执行之后会在.gitconfig文件中多加红色字体项

[user]   
  name = 天明
  email = xxxx@xxxx.com
[credential]
  helper = store

 

4、之后cd到项目目录,执行git pull命令,会提示输入账号密码。输完这一次以后就不再需要,并且会在根目录生成一个.git-credentials文件

[root@iZ25mi9h7ayZ test]# git pull
Username for 'https://git.oschina.net': xxxx@xxxx.com
Password for 'https://xxxx@xxxx.com@git.oschina.net':
[root@iZ25mi9h7ayZ ~]# cat .git-credentials
https://Username:Password@git.oschina.net

5、之后pull/push代码都不再需要输入账号密码了~

 

方法二

1、生成公钥,输入指令,

ssh-keygen -t rsa -C "你的邮箱"

第一次出现:Enter file in which to save the key (/root/.ssh/id_rsa): 直接按回车就行。

第二次出现:Enter passphrase (empty for no passphrase): 第一次输入公钥密码(推荐不用输入,直接回车,以便在clone、pull、push等不用输入公钥密码)。

第三次出现:Enter same passphrase again: 再次输入公钥密码。出现这样的信息就代表成功了。

2、CentOS7中默认生成的目录是在/root下面,直接cd /root/.ssh。

3、把公钥里面的内容粘贴到authorized_keys文件里,执行cat id_rsa.pub >> authorized_keys。可以查看authorized_keys文件里的内容是跟id_rsa.pub文件里的内容是一样的

4、查看公钥id_rsa.pub,并复制公钥。

5、到码云或者git平台(远程代码库)找到个人公钥,添加公钥。

6、输入指令:ssh -T git@gitee.com

7、进入到项目根目录,使用命令vim .git/config 

红色框中是HTTPS传输的地址,你需要改成SSH的传输地址,修改完之后如下 

这样使用命令 git pull/push 就不用输入密码了,这是因为刚才在生成公钥时,没有输入密码,所以当你选择SSH地址传输时,就可免密码使用命令 git pull/push。

 

posted @ 2018-06-25 14:44  Edward1108  阅读(1506)  评论(0编辑  收藏  举报