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博客

相关推荐
坤坤子吖23 分钟前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
AI_Gump31 分钟前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
星恒随风2 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql
少司府2 小时前
嵌入式入门篇(二):初识STM32F103ZET6
linux·python·stm32·单片机·嵌入式硬件·mcu·嵌入式软件
无足鸟ICT3 小时前
【RHCA+】IO调度算法
linux·服务器
wacsii3 小时前
【Linux进程(四)】命令行参数与环境变量
linux·服务器
无奈笑天下3 小时前
银河麒麟上lsblk命令教程详解
linux·运维·服务器·数据库
科研邪修法5 小时前
培训PDF保护配置:把需求转换成可验收权限
linux·服务器·网络
Felven5 小时前
中科驭数100G网卡RDMA性能测试
linux·rdma·中科驭数·100g网卡
雪落漂泊8 小时前
Liunux进程(七):程序控制篇(中)
linux·运维·windows