zoukankan      html  css  js  c++  java
  • git连接gitlab远程仓库

    远程仓库是指托管在网络上的项目仓库,现在互联网上有很多项目托管平台,比如码云、github、gitlab等等。当然如果你不想你的代码开源就要花费一些费用获得独立的空间,或者在自己的服务器上搭建自己的项目仓库。

    本地Git与远端服务器GitLab之间连接方式主要分为:SSH方式和HTTP方式。

    HTTP方式:这种方式要求project在创建的时候只能选择“Public”公开状态,Private和Internal私有模式下不能使用http方式进行连接,如果考虑到安全性必须进行安全设置。
    SSH方式:这是一种相对安全的方式,本地git仓库和远端gitlab仓库之间的传输是通过SSH加密,SSH方式在三种project模式下都可以使用。

    在本篇文章中我以连接gitlab远程仓库为例。由于本地git仓库和gitlab仓库之间的传输是通过ssh加密的,所以必须要让gitlab仓库认证你ssh key,在此之前,必须要生成ssh key。

    何谓公钥:
    1.很多服务器都是需要认证的,ssh认证是其中的一种。在客户端生成公钥,把生成的公钥添加到服务器,你以后连接服务器就不用每次都输入用户名和密码了。
    2.很多git服务器都是用ssh认证方式,你需要把你生成的公钥发送给代码仓库管理员,让他给你添加到服务器上,你就可以通过ssh自由地拉取和提交代码了。

    1. 配置本地git

    • 本地git下载,直接去官网下载安装即可。

    • 用户名和邮箱的作用:
      用户名和邮箱地址是本地git客户端的一个变量。用户每次提交代码都会记录用户名和邮箱

    • 配置全局的用户名和邮箱,命令分别为:

    git config --global user.name "yourname"
    
    git config --global user.email youemail 
    
    • 查看全局的用户名和邮箱,命令分别为:
    git config --global user.name
    
    git config --global user.email
    
    • 查看已经设置好的用户名和邮箱:
    git config --list
    
    • 配置完后,全局的用户名和邮箱会写到C盘用户下的.gitconfig中,如:
      在这里插入图片描述
      也可以直接用编辑器打开对用户名或邮箱进行修改。

    如果想重新设置用户名和邮箱,下面分别介绍两种不同的修改git用户名和邮箱的方法。

    2.使用命令修改git的用户名和提交的邮箱

    • (1)修改全局,如果你要修改当前全局的用户名和邮箱时,需要在上面的两条命令中添加一个参数,–global,代表的是全局。命令分别为:
      注意:设置邮箱(没有双引号)
    git config  --global user.name  "yourname"
    git config  --global user.email youremail
    
    • (2)修改当前的 project,命令分别为:
    git config user.name "yourname"
    git config user.email youremail
    

    配置完后,单一的仓库的用户名和邮箱会写到该仓库.git下的config文件中。

    直接修改git的配置文件的方式来进行修改

    • (1) 打开全局的.gitconfig文件的命令为:
    vim ~/.gitconfig 
    
    • 打开如下,然后在文件中直接修改即可
      在这里插入图片描述
    • (2)打开当前project 中的config文件,该文件在每个project中的.git目录下,直接进入该目录进行编辑即可。当然,如果没有进行过修改的话,默认打开时没有对应的用户名和密码的。只有进行过修改之后,才会在config中产生对应字段。

    3.配置本地git完成后,生成SSH 密钥,配置GitLab SSH公钥。

    • 新建一个文件夹,用于clone要下的项目,查看本机是否有SSH Key,在终端输入:
    cd ~/.ssh
    ssh-keygen -t rsa -C "your_email@youremail.com"
    ll
    

    执行密钥生成命令,基本上是一路回车既可以了,但是需要注意的是:执行命令的过程中是会提示。输入密钥的密码的(如下图中红色箭头处,输入两次相同的,即是又一次确认密码),不需要密码直接回车就行。

    Generating public/private rsa key pair. #正在生成公钥/私钥对。

    Enter file in which to save the key (/c/Users/xdr/.ssh/id_rsa): #输入key的保存位置,直接回车即可。

    Enter passphrase (empty for no passphrase): #如果不想设置密码直接不输入内容,按 Enter键即可。

    我这里已经生成好了:
    在这里插入图片描述

    • 如果.ssh目录不存在,手动创建,执行上面的生成公钥命令即可
    mkdir ~/.ssh
    
    • 进入到此文件夹中,并执行生成ssh key的命令。然后按三次回车。这时候在.ssh文件夹下就得到了id_rsa和id_rsa.pub两个文件。其中id_rsa中的内容便是私钥id_rsa.pub中的内容便是公钥,可以在C:\Users\用户目录.ssh目录下找到这两个文件。
      在这里插入图片描述
    • 打开id_rsa.pub文件,复制里面的内容
    cat id_rsa.pub 或
    vim id_rsa.pub 或
    cat ~/.ssh/id_rsa.pub
    
    • 登录GitLab账号,点击头像,Setting->SSH Keys,将复制的公钥黏贴到Key文本框中,title随便添加就可以了。
    • 至此,Git/GitLab连接配置完成,接下来就可以clonegitlab上的项目了。
    • git公钥链接gitlab或gitlab形式差不多类似。
    • 也可以查看我写的另外一篇有关公钥的介绍,Linux服务器之SSH 密钥创建及密钥登录设置

    本文来自博客园,作者:兮动人,转载请注明原文链接:https://www.cnblogs.com/xdr630/p/15254930.html

  • 相关阅读:
    1015: [JSOI2008]星球大战starwar
    Tyvj P1813 [JSOI2008]海战训练
    1012: [JSOI2008]最大数maxnumber
    1430: 小猴打架
    1270: [BeijingWc2008]雷涛的小猫
    1202: [HNOI2005]狡猾的商人
    1059: [ZJOI2007]矩阵游戏
    3039: 玉蟾宫
    1303: [CQOI2009]中位数图
    1002: [FJOI2007]轮状病毒
  • 原文地址:https://www.cnblogs.com/xdr630/p/15254930.html
Copyright © 2011-2022 走看看