使用git远程gitlab的使用教程

开通gitlab(开通需要咨询所在公司的gitlab管理员)账号后,本地Git仓库和gitlab仓库仍然不能传输项目,原因是要通过SSH加密才能传输,所以需要让gitlab认证本地的SSH Key,认证之前,则先使用Git生成SSH Key。

1、Git生成秘钥

1.1 确认本地秘钥

SSH 秘钥默认储存在账户的主目录下的 ~/.ssh 目录,例如:C:\Users\Administrator.ssh
使用git远程gitlab的使用教程
查看是否包含id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之类成对的文件),有.pub 后缀的文件就是公钥,另一个文件则是**。

如果有这两个文件,则跳过1.2;如果没有这两个文件,甚至.ssh目录也没有,则需要用ssh-****** 来创建。

1.2 生成秘钥信息
  • 在.ssh 目录下右键打开Git Bash(.ssh目录不存在,手动创建)
    使用git远程gitlab的使用教程
  • 生成秘钥:ssh-****** -t rsa -C "[email protected]" ,直接Enter就行,然后会提示输入密码(可输可不输), 说明:命令中的email,就是gitlab中的账号,需要保持一致,也可以自定义邮箱即可。
    使用git远程gitlab的使用教程
  • 执行完成之后,在.ssh 目录下就会生成秘钥文件
    使用git远程gitlab的使用教程

2、gitlab秘钥添加

2.1 登录gitlab

使用申请的gitlab账号登录,确保登录成功
使用git远程gitlab的使用教程

2.2 添加秘钥
  • 找到账号的用户中心,添加秘钥
    使用git远程gitlab的使用教程
  • 秘钥的获取方式:
    • 第一种:拷贝公钥文件(即1.2中生成的id_rsa.pub)中的信息到key输入框中,title可以随便起,见名知意即可。然后点击Add Keys
      使用git远程gitlab的使用教程
    • 第二种:使用命令获取公钥cat ~/.ssh/id_rsa.pub
      使用git远程gitlab的使用教程
  • 将获取到的私钥添加到用户中心的SSH Keys文本框中,点击添加就会建立本地和gitlab仓库匹配
    使用git远程gitlab的使用教程

3、Git示例

注意:克隆代码之前确保有相关的项目代码权限(master、developer、reporter),如无权限,请求项目具有master权限的同事帮忙分配权限
使用git远程gitlab的使用教程

  • 在本地目标下载目录下,右键–>Git Bash Here

  • 输入命令:git clone ssh://[email protected]:29418/~xxxxxx/test.git使用git远程gitlab的使用教程

  • 首次拉取代码时,可能需要确认秘钥信息,输入yes即可
    使用git远程gitlab的使用教程

  • 确认项目已从gitlab上克隆到本地
    使用git远程gitlab的使用教程

  • 然后进入到clone下来的test目录,cd test 进行基本操作即可,提交到线上的时候就不需要每次输入密码了。

4、当本地之前关联了github、码云等,可能会导致出错

使用git远程gitlab的使用教程

  • 可以重新生成或者将直接将之前的配置公钥获取出来即可。
  • 查看你的 public key
    cat ~/.ssh/id_rsa.pub
  • 将获取到的公钥添加到码云:添加地址:https://gitee.com/profile/sshkeys
    使用git远程gitlab的使用教程
  • 终端输入 ssh -T [email protected]就可以正常操作了