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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧