Ubuntu下安装并初始化Git同时添加SSH密钥

  • 在 Ubuntu 上可以使用以下命令安装git:

    复制代码
    sudo apt-get update
    sudo apt-get install git

在 Ubuntu 下安装好 Git 之后,接下来可以进行一些基本的配置和操作,以便更好地使用 Git。

1. 配置 Git 用户信息

在使用 Git 进行版本控制前,首先需要配置你的用户名和邮箱。这些信息将与你的提交记录关联。

复制代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"

2. 检查 Git 配置

可以使用以下命令查看当前的 Git 配置:

复制代码
git config --list

3. 生成 SSH 密钥(可选)

如果你计划从 GitHub 或其他 Git 托管服务克隆私有仓库,建议生成 SSH 密钥并将其添加到你的 GitHub / GitLab / Bitbucket 帐户。

生成 SSH 密钥的命令:

复制代码
mkdir .ssh
ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"

当生成密钥时,会让你选择将密钥保存在哪里,你就选择我们创建的.ssh文件夹。

生成后,可以使用以下命令查看公钥:(这里假设你的密钥文件名为id_rsa,如果是其他请更换)

复制代码
cat ~/.ssh/id_rsa.pub

将输出的公钥内容添加到你的 GitHub 账户的 SSH 密钥设置中。

要将生成的 SSH 公钥添加到你的 GitHub 账户中,请按照以下步骤操作:

3.1. 查看公钥

首先,你需要使用以下命令查看生成的公钥内容:

复制代码
cat ~/.ssh/id_rsa.pub

这将显示公钥的内容。您需要复制整个公钥字符串,包括开头的 ssh-rsa 和结尾的邮箱地址。

3.2. 登录 GitHub

打开浏览器,访问 GitHub 并登录到你的账户。

3.3. 访问 SSH 密钥设置
  1. 点击右上角的头像,然后选择 Settings
  2. 在左侧菜单中,选择 SSH and GPG keys
3.4. 添加新 SSH 密钥
  1. 点击 New SSH key 按钮。
  2. Title 字段中,输入一个易于识别的名称,例如"个人电脑"或"工作站"。
  3. Key 字段中,粘贴你从 cat ~/.ssh/id_rsa.pub 命令中复制的公钥内容。
  4. 最后,点击 Add SSH key 按钮。
3.5. 验证

添加 SSH 密钥后,你可以尝试使用 SSH URL 克隆你的私有仓库,以验证密钥是否正确配置。例如:

复制代码
git clone git@github.com:yourusername/your-private-repo.git

如果没有提示你输入密码,说明 SSH 密钥配置成功。

4. 克隆仓库

使用 Git 克隆代码仓库,你需要知道仓库的地址。使用以下命令克隆仓库:

  • 使用 HTTPS:

    复制代码
    git clone https://github.com/username/repository.git
  • 使用 SSH:

    复制代码
    git clone git@github.com:username/repository.git

5. 创建新仓库

如果你要创建新的 Git 仓库,可以在项目根目录下使用以下命令:(这里创建的是本地仓库)

复制代码
mkdir myproject
cd myproject
git init

如果你直接克隆一个现有的 Git 仓库,你不需要手动执行 git init 命令。使用 git clone 命令时,Git 会自动为你初始化一个新的仓库,并将远程仓库的所有内容复制到本地目录中。

6. 添加文件和提交

向 Git 仓库中添加文件并进行提交:

  1. 将文件添加到暂存区:

    复制代码
    git add 文件名

    或者添加所有文件:

    复制代码
    git add .
  2. 提交到本地仓库:

    复制代码
    git commit -m "提交信息"

下篇文章讲述如何推送仓库。如何使用Git推送本地搭建的仓库以及远程克隆的仓库-CSDN博客

相关推荐
望获linux30 分钟前
【Linux基础知识系列】第四十三篇 - 基础正则表达式与 grep/sed
linux·运维·服务器·开发语言·前端·操作系统·嵌入式软件
眠りたいです40 分钟前
Mysql常用内置函数,复合查询及内外连接
linux·数据库·c++·mysql
我的泪换不回玫瑰42 分钟前
Linux系统管理命令
linux
applebomb1 小时前
没合适的组合wheel包,就自行编译flash_attn吧
python·ubuntu·attention·flash
jjkkzzzz2 小时前
Linux下的C/C++开发之操作Zookeeper
linux·zookeeper·c/c++
二当家的素材网2 小时前
Centos和麒麟系统如何每天晚上2点10分定时备份达梦数据库
linux·数据库·centos
挑战者6668882 小时前
CentOS 系统高效部署 Dify 全攻略
linux·运维·centos
DD_陈东东2 小时前
gdbus 常用数据结构与库函数
linux
T - mars2 小时前
Git在Pycharm中的使用
git
sunarmy3 小时前
curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104
git