新增服务器管理员:git
服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码
[root@vultr home]# id git
id: git:no such user # 没有此用户
[root@vultr home]# useradd git // 新增用户,用户名为git
[root@vultr home]# passwd git // 设置新用户git密码
初始化一个git仓库
[root@vultr home]# git init --bare home/git/project.git # 初始化一个仓库
[root@vultr git]# chown -R git:git project.git #设置仓库的管理员为git
# 第一个git表示用户组,第二个git表示用户组里面的git用户
- tips:到这里,服务器端的仓库就新建完了,就是这么简单
本地clone仓库
> git clone git@149.28.18.111:/home/git/project.git
> Cloning into 'project'...
> warning: You appear to have cloned an empty repository.
# 这样显示就表示克隆成功了
本地新建一个test.txt文件,push到服务器
>> git status
>> git add -a .
>> git commit -m 'test'
>> git push
git@149.28.18.111's password:
push时会提醒你输入前面新建的git用户密码,输入后推送成功.输入密码时不可见
Counting objects: 3, done.
Writing objects: 100% (3/3), 204 bytes | 204.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To 149.28.18.111:/home/git/project.git
* [new branch] master -> master
git服务器SSH验证,避免输入密码
git每一次push都需要输入密码显然很麻烦,除了密码的验证方式,还有ssh(公钥)验证方式。
客户端新建一个ssh(公钥)
- 设置Git的user name和email:
>> git config --global user.name "example"
>> git config --global user.email "example@qq.com"
- 生成密钥
>> ssh-keygen -t rsa -C “example@qq.com”
- 生成密钥成功后,公钥保存的目录
>> C:\Users\你电脑的用户名\.ssh
# 在这个目录下有2个文件 `id_rsa`和`id_rsa.pub`.其中id_rsa是你自己的私钥,本地保存即可,id_rsa.pub是公钥,需要上传到服务器
- 服务器端,新建一个文件夹.ssh,一会儿用来存放公钥,目录为/home/git/.ssh
# 新建
[root@vultr git]# mkdir /home/git/.ssh
[root@vultr git]# cd /home/git
# 查看
[root@vultr git]# ls -a
# 出现 .ssh 则表示新建成功
. .. project.git .ssh
-
即将成功了! 客户端,打开
id_rsa.pub
文件,复制内容到本地新建的authorized_keys
文件内。 将authorized_keys
文件上传到服务器,位置目录为/home/git/.ssh/authorized_keys
。也就是第4步用来存放公钥的文件夹 -
测试是否成功!
本地的test.txt文件改动一下内容,再次提交,你会发现不用密码了.
网友评论