git 从零开始配置
参考:git ssh失败
1. 安装 Git
打开终端,执行:
1 | sudo apt update |
检查是否安装成功:
1 | git --version |
2. 配置 Git 用户名和邮箱
你给的信息是:
用户名:dddd
邮箱:0000@qq.com
执行:
1 | git config --global user.name "dddd" |
Git 官方文档说明,user.name 和 user.email 会写入之后的提交记录中,使用 --global 表示对当前系统用户下的所有 Git 项目生效。
建议顺手设置默认分支名为 main:
1 | git config --global init.defaultBranch main |
也可以设置输出颜色,方便看状态:
1 | git config --global color.ui auto |
检查配置:
1 | git config --global --list |
正常应看到类似:
1 | user.name=dddd |
3. 推荐配置 SSH 连接 GitHub
你给的 GitHub 地址是:
1 | https://github.com/dddd/ |
这是你的 GitHub 主页地址。以后克隆仓库时,需要具体仓库地址,例如:
1 | https://github.com/dddd/仓库名.git |
或者 SSH 地址:
1 | git@github.com:dddd/仓库名.git |
日常更推荐 SSH,因为配置好后 push 和 pull 不需要反复输入账号密码。GitHub 官方文档也说明,SSH 方式需要在本地生成 SSH 密钥,并把公钥添加到 GitHub 账户中。
3.1 检查是否已有 SSH 密钥
1 | ls -al ~/.ssh |
如果看到类似下面文件,说明可能已有 SSH 密钥:
1 | id_ed25519 |
如果是新系统,大概率没有,可以继续生成。
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 | Enter passphrase: |
这里有两种选择:
如果你想简单省事,可以直接按两次回车,不设置密码。
如果你想安全一些,可以输入一个密码,以后使用 SSH key 时可能需要输入。
5. 启动 ssh-agent 并添加密钥
执行:
1 | eval "$(ssh-agent -s)" |
如果成功,会看到类似:
1 | Identity added: /home/你的用户名/.ssh/id_ed25519 |
6. 把 SSH 公钥添加到 GitHub
先显示你的公钥:
1 | cat ~/.ssh/id_ed25519.pub |
终端会输出一长串内容,大概长这样:
1 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... 0000@qq.com |
完整复制这一整行。
然后打开 GitHub:
- 进入 GitHub 网页并登录你的账号
dddd - 点击右上角头像
- 进入 Settings
- 左侧找到 SSH and GPG keys
- 点击 New SSH key
- Title 可以写:
Ubuntu 24.04 - Key type 选择:
Authentication Key - 把刚才复制的公钥粘贴进去
- 点击 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 | git branch -M main |
10. 常用检查命令
查看当前 Git 配置:
1 | git config --global --list |
查看当前项目远程地址:
1 | git remote -v |
查看当前分支:
1 | git branch |
查看当前状态:
1 | git status |
查看提交记录:
1 | git log --oneline |