GitLab下载源码的两种方式(https/ssh-key)

本文详细介绍了如何在GitLab中配置SSH Key,以便通过SSH方式无密码克隆、推送和拉取代码。包括生成SSH密钥对、配置GitLab以及解决权限拒绝问题的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如今很多公司使用git来作为代码版本控制工具,现所在公司是自己搭建私人的GitLab来管理代码的,GitLab中使用git clone下载源码时,支持https和git(即ssh)两种方式下载源码。

一、使用https方式下载源码

这种方法在每次clone、pull、push等操作时都需要输入账号密码,如此十分繁琐。后来找到解决方案,就是在本地git客户端生成ssh-key,配置到GitLab去。

git clone https://.../sora.git

二、使用Git方式(ssh-key)下载源码

如果使用这种方法时,没配置SSH key,会报如下错误。

$ git clone ssh://git@ip:port/username/proj.git
Cloning into 'proj'...
git@ip: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository exists.

配置SSH证书的方法:

1. 使用ssh-keygen命令,生成ssh公钥和私钥对

点击回车,会让你选择存储路径,此时不用理会直接回车,其会保存到默认路径。

¥ssh-keygen

Generating public/private rsa key pair.
Enter file in which to save the key (/home/msy/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/msy/.ssh/id_rsa.
Your public key has been saved in /home/msy/.ssh/id_rsa.pub.
The key fingerprint is:SHA256:***************
The key's randomart image is:***************

2. 查看并复制公钥

cat /home/msy/.ssh/id_rsa.pub

type %userprofile%\.ssh\id_rsa.pub | clip
# 此时已复制

3. 配置GitLab

到GitLab界面,点击settings,后点击SSH-Keys,将复制过来的公钥粘贴到key框中,下方title可自己命名,点击addkey即可。


经过如上操作,再次拉取代码和提取代码应无需再输密码,若还需输入密码

      输入 git config --global credential.helper store  命令

      然后操作pull/push 会让输入用户名密码,第一次输入进去。下次再操作pull/push时就不需要输入用户名密码了。

参考文献:

git ssh key配置_讨厌走开啦-CSDN博客_git ssh

### 如何在 IntelliJ IDEA 中从 GitLab 克隆或拉取项目 #### 配置 SSH 密钥 为了安全地连接到 GitLab,建议先配置 SSH 密钥。这一步骤可以避免每次推送或拉取代码时都需要输入用户名和密码。 1. 生成新的 SSH 密钥(如果尚未创建): ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 2. 将生成的公钥添加到 GitLab 账户设置中的 SSH Keys 下[^1]。 #### 使用 HTTPSSSH 协议克隆仓库 有两种主要方式可以从 GitLab 上获取项目: - **HTTPS 方式** 当选择此选项时,在首次执行 clone 操作时会被提示输入 GitLab 的登录凭证。可以通过缓存这些凭据来减少频繁输入的需求。 - **SSH 方式** 如果已经设置了 SSH Key,则可以直接使用 SSH URL 进行无密码访问[^2]。 #### 在 IntelliJ IDEA 中克隆项目 完成上述准备工作后,按照如下步骤操作可以在 IDE 内部轻松管理远程仓库: 1. 启动 IntelliJ IDEA 并进入欢迎界面; 2. 点击 `Get from Version Control`; 3. 输入项目的 Git 地址 (HTTP(S) or SSH),并指定保存位置; 4. 开始下载源码至本地文件夹,并自动导入为新工程。 对于已有本地副本的情况,也可以通过菜单栏里的 `VCS -> Checkout from Version Control -> Git...` 来实现相同功能[^3]。 ```python # 示例 Python 代码片段展示如何初始化 Git 库 import os from git import Repo repo_path = '/path/to/your/project' if not os.path.exists(repo_path): Repo.clone_from('https://gitlab.example.com/user/repo.git', repo_path) else: print(f"{repo_path} already exists.") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值