• Git(三)


    git可以通过https、ssh进行代码的clone

    注意:github除了可以通过https、ssh进行代码clone之外,还可以通过access token进行clone

    下面针对三种方式进行讲解:

    一、 区分https clone 和 ssh clone

    不同的克隆方式导致校验方式不同,对应的免秘方式也不一样。 https通过记住账号密码免登,ssh通过校验生成的密钥免登。 通常都用ssh校验。

    二、https免密配置方法

    git通过了一种凭证的方式可以进行账号密码的缓存本地,输入一次后可以记住,下次不需要输入了。

    创建凭证的方式如下:

    幸运的是,Git 拥有一个凭证系统来处理这个事情。 下面有一些 Git 的选项:
    
    1.默认所有都不缓存。 每一次连接都会询问你的用户名和密码。
    
    2.“cache” 模式会将凭证存放在内存中一段时间。 密码永远不会被存储在磁盘中,并且在15分钟后从内存中清除。
    
    3.“store” 模式会将凭证用明文的形式存放在磁盘中,并且永不过期。 这意味着除非你修改了你在 Git 服务器上的密码,否则你永远不需要再次输入你的凭证信息。 这种方式的缺点是你的密码是用明文的方式存放在你的 home 目录下。
    
    4.如果你使用的是 Mac,Git 还有一种 “osxkeychain” 模式,它会将凭证缓存到你系统用户的钥匙串中。 这种方式将凭证存放在磁盘中,并且永不过期,但是是被加密的,这种加密方式与存放 HTTPS 凭证以及 Safari 的自动填写是相同的。
    
    5.如果你使用的是 Windows,你可以安装一个叫做 “Git Credential Manager for Windows” 的辅助工具。 这和上面说的 “osxkeychain” 十分类似,但是是使用 Windows Credential Store 来控制敏感信息。 
    可以在 https://github.com/Microsoft/Git-Credential-Manager-for-Windows 下载。
    注意:如果是mac,一般采用第四种凭证存储方式,会存储在钥匙串中,打开钥匙串,搜索git可以找到github、gitee等各个远程仓库存储的登录账号和密码。也可以进行凭证的删除。
    你可以设置 Git 的配置来选择上述的一种方式: git config --global credential.helper store
    下面命令查询配置的存储凭证方式:
    git config -l|grep credential.helper
    git查找凭证时,从配置的存储凭证依次查找,找到就返回,没找到就需要输入账号密码拉取代码。
    具体详细情况参考git官网凭证文档:https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%87%AD%E8%AF%81%E5%AD%98%E5%82%A8

    如果不使用凭证,也可以使用https方式,只是会采用默认不缓存处理,每次访问git远程都需要输入用户名和密码。

    注意:这里https方式需要的用户名和密码是指远程git仓库平台的登录用户名和密码,比如gitee、github的登录账号和密码。而不是git config配置的用户名和用户邮箱,git config配置的用户名和邮箱仅仅为了标识是哪个用户提交的代码,没有其他作用。

    三、ssh免密配置方法

    执行生成公钥和私钥的命令:

    ssh-keygen -t rsa

    按回车3下     一般都是直接不写为空   直接回车

    执行查看公钥的命令:

    cat ~/.ssh/id_rsa.pub

    也可自行百度windows或者mac存储git公钥的地方,进行查看。

    github、gitee进行添加ssh公钥操作。例如:

    github添加 你的ssh操作步骤:

     

     gitee添加公钥方式可自行百度。

    转载:https://www.cnblogs.com/cxx8181602/p/11125539.html

    四、github 采用access token进行clone

    还有一种方式,就是通过access token来实现,这种方式最为简单方便。只需要一个token字符串即可
    进入/settings/tokens/new页面
    选择相应的权限,之后生成access token

     

    clone方式

    复制 Clone with HTTPS 方式的地址,使用 git 命令:
    git clone https://oauth2:access_token@github.com/username/xxx.git
    也就是说 clone 的时候,在你的项目地址的协议和主机名之间,加上 oauth2:access_token@,即可成功拉取代码。如果申请的该access token有write的权限,是可以push的
    示例: git clone https://oauth2:6e06502c7bdbf70fabdbbf966eb41f8d5******@github.com/chywx/vue-nuxt.git

    转载:https://www.cnblogs.com/chywx/p/13447056.html 

    参考:https://blog.csdn.net/qq_37502106/article/details/106780562

    带着疑问去思考,然后串联,进而归纳总结,不断追问自己,进行自我辩证,像侦查嫌疑案件一样看待技术问题,漆黑的街道,你我一起寻找线索,你就是技术界大侦探福尔摩斯
  • 相关阅读:
    牛客(4) 重建二叉树
    牛客(3)从尾到头打印链表
    牛客(2)字符串替换
    牛客(1)二分查找
    同义词+序列+视图+临时表
    用户+授权
    控制文件+日志文件
    oracle表的基本操作
    Linux(CentOS6.8)配置Redis
    Linux(CentOS6.8)配置ActiveMQ
  • 原文地址:https://www.cnblogs.com/cainiao-Shun666/p/14840163.html
Copyright © 2020-2023  润新知