git 从零开始配置

参考:git ssh失败

1. 安装 Git

打开终端,执行:

1
2
sudo apt update
sudo apt install git -y

检查是否安装成功:

1
git --version

2. 配置 Git 用户名和邮箱

你给的信息是:

用户名:dddd
邮箱:0000@qq.com

执行:

1
2
git config --global user.name "dddd"
git config --global user.email "0000@qq.com"

Git 官方文档说明,user.nameuser.email 会写入之后的提交记录中,使用 --global 表示对当前系统用户下的所有 Git 项目生效。

建议顺手设置默认分支名为 main

1
git config --global init.defaultBranch main

也可以设置输出颜色,方便看状态:

1
git config --global color.ui auto

检查配置:

1
git config --global --list

正常应看到类似:

1
2
3
4
user.name=dddd
user.email=0000@qq.com
init.defaultbranch=main
color.ui=auto

3. 推荐配置 SSH 连接 GitHub

你给的 GitHub 地址是:

1
https://github.com/dddd/

这是你的 GitHub 主页地址。以后克隆仓库时,需要具体仓库地址,例如:

1
https://github.com/dddd/仓库名.git

或者 SSH 地址:

1
git@github.com:dddd/仓库名.git

日常更推荐 SSH,因为配置好后 pushpull 不需要反复输入账号密码。GitHub 官方文档也说明,SSH 方式需要在本地生成 SSH 密钥,并把公钥添加到 GitHub 账户中。

3.1 检查是否已有 SSH 密钥

1
ls -al ~/.ssh

如果看到类似下面文件,说明可能已有 SSH 密钥:

1
2
id_ed25519
id_ed25519.pub

如果是新系统,大概率没有,可以继续生成。


4. 生成新的 SSH 密钥

执行:

1
ssh-keygen -t ed25519 -C "0000@qq.com"

GitHub 官方推荐的 Linux 命令也是使用 ssh-keygen -t ed25519 -C "your_email@example.com" 生成 SSH key。

执行后会出现提示:

1
Enter file in which to save the key (/home/你的用户名/.ssh/id_ed25519):

这里直接按回车。

然后会提示设置密码:

1
2
Enter passphrase:
Enter same passphrase again:

这里有两种选择:

如果你想简单省事,可以直接按两次回车,不设置密码。
如果你想安全一些,可以输入一个密码,以后使用 SSH key 时可能需要输入。


5. 启动 ssh-agent 并添加密钥

执行:

1
2
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

如果成功,会看到类似:

1
Identity added: /home/你的用户名/.ssh/id_ed25519

6. 把 SSH 公钥添加到 GitHub

先显示你的公钥:

1
cat ~/.ssh/id_ed25519.pub

终端会输出一长串内容,大概长这样:

1
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... 0000@qq.com

完整复制这一整行。

然后打开 GitHub:

  1. 进入 GitHub 网页并登录你的账号 dddd
  2. 点击右上角头像
  3. 进入 Settings
  4. 左侧找到 SSH and GPG keys
  5. 点击 New SSH key
  6. Title 可以写:Ubuntu 24.04
  7. Key type 选择:Authentication Key
  8. 把刚才复制的公钥粘贴进去
  9. 点击 Add SSH key

注意:只复制 .pub 公钥文件内容,不要复制 id_ed25519 私钥。GitHub 官方文档也要求把 public key 添加到 GitHub 账户中,而不是私钥。


7. 测试 SSH 是否连接成功

执行:

1
ssh -T git@github.com

第一次可能会提示:

1
Are you sure you want to continue connecting (yes/no/[fingerprint])?

输入:

1
yes

如果配置成功,会出现类似:

1
Hi dddd! You've successfully authenticated, but GitHub does not provide shell access.

看到这句话就说明 GitHub SSH 配置成功了。


8. 克隆仓库的正确方式

你的 GitHub 主页是:

1
https://github.com/dddd/

但克隆时需要具体仓库名。

例如你有一个仓库叫 test,推荐用 SSH:

1
git clone git@github.com:dddd/test.git

也可以用 HTTPS:

1
git clone https://github.com/dddd/test.git

但是 HTTPS 方式现在不能直接使用 GitHub 登录密码,GitHub 官方说明,HTTPS Git 操作需要使用 personal access token,也就是访问令牌,不能用普通密码。


9. 已有本地项目关联 GitHub 仓库

假设你有一个本地文件夹,想上传到 GitHub,比如:

1
cd ~/myproject

初始化 Git:

1
git init

添加文件:

1
git add .

提交:

1
git commit -m "Initial commit"

关联远程仓库。假设远程仓库名是 myproject

1
git remote add origin git@github.com:dddd/myproject.git

推送到 GitHub:

1
git push -u origin main

如果远程仓库默认分支不是 main,可以先检查:

1
git branch

必要时改名为 main

1
2
git branch -M main
git push -u origin main

10. 常用检查命令

查看当前 Git 配置:

1
git config --global --list

查看当前项目远程地址:

1
git remote -v

查看当前分支:

1
git branch

查看当前状态:

1
git status

查看提交记录:

1
git log --oneline