• GIT 单个仓库秘钥配置


    [ 前置知识 ] git config 配置的 3 个级别

    --system # 系统级别,位于 /etc/gitconfig 下对影响该系统下所有用户
    --global # 用户级别,位于 ~/.gitconfig 下,仅影响该用户
    --local  # 仓库级别,位于仓库的 .git/config , 仅影响该仓库
    # 注意 : git config [--local] user.name "xxx" 默认就是 --local 可不填,
    

    配置过程

    1. 生成密钥对

    # 生成的秘钥需要另外制定路径,避免误操作覆盖默认文件
    # 如果没有 ssh-keygen 需要安装 yum install openssl
    ssh-keygen -t rsa -C "xxx@xx.com" -b 4096 
    # 接下来制定文件路径和名称为 /home/xxx/.ssh/id_rsa_xxx 即可
    

    2. 在 .ssh 目录下添加 config 配置文件

    # 添加秘钥配置文件 [路径:/home/xxx/.ssh/config]
    Host xxx-gitlab                           # 别名,以后用来替代域名部分
        HostName gitlab.com                      # 域名或IP
        Port xxxx                                # 默认22可去掉此项
        User xxx@xxx.com                         # 注意是邮箱
        PreferredAuthentications publickey
        IdentityFile /home/xxx/.ssh/id_rsa_xxx   # 生成的单独项目私钥
        
    

    3. 添加密钥至ssh中

    # 添加到 ssh 秘钥配置中 
    ssh-add /home/xxx/.ssh/id_rsa_xxx
    
    # 如果出现错误提示 Could not open a connection to your authentication agent.
    ssh-agent bash
    

    4. 测试配置文件是否可用

    # 测试一下配置是否成功
    ssh -T git@xxx-gitlab # @后面时 Host 别名,别搞错
    
    # 如果出现错误,输入yes
    The authenticity of host xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx) can not be established.
    ECDSA key fingerprint is SHA256:xxxx.
    Are you sure you want to continue connecting (yes/no)? yes
    
    # 成功后出现  Welcome to GitLab, xxx!
    

    5. 设置仓库配置参数

    # 建立一个新的仓库目录并进入
    mkdir testgit
    cd testgit
    # 初始化仓库
    git init 
    
    # 设置单独仓库的用户名和邮箱
    git config user.name "xxx"
    git config user.email "xxx@xx.com"
    
    # 设置完成后可以在该仓库的 .git/config 文件找到
    [core]
    	repositoryformatversion = 0
    	filemode = true
    	bare = false
    	logallrefupdates = true
    [user]
    	name = someone
    	email = xxx@xx.com
    
    # 或者用 git config -l 查看
    core.repositoryformatversion=0
    core.filemode=true
    core.bare=false
    core.logallrefupdates=true
    user.name=someone
    user.email=xxx@xx.com
    
    

    6. 操作远程仓库 [ 关联已存在的仓库 ]

    # 添加远程仓库源
    # 将域名或IP 部分替换成别名 
    git remote add origin git@dinglc-gitlab:xxx-xx/xxx-xx-xx.git
    # 拉取
    git pull
    git checkout master
    
    # 或者
    git checkout origin/master
    
  • 相关阅读:
    C#.NET 超大文件上传和断点续传的实现
    Linux下arp用法
    daf简记
    Linux route命令详解和使用示例(查看和操作IP路由表)
    CMake使用之一
    Crontab的格式
    linux 单网卡绑定两个ip
    云计算与虚拟化以及IaaS, PaaS和SaaS
    shell中判断用法
    解决screen Cannot open your terminal '/dev/pts/1'问题
  • 原文地址:https://www.cnblogs.com/dongyanglv/p/7469995.html
Copyright © 2020-2023  润新知