Git 是本地版本控制工具,GitHub 是基于 Git 的远程协作平台。新手应先掌握 Git 本地操作,再结合 GitHub 进行代码托管。
先说结论:Git 是核心工具,GitHub 是服务平台,两者配合使用但职责不同。
- 适合:刚接触代码版本管理、需要备份代码或参与开源协作的开发者。
- 先看:Git 的基础命令(add, commit, push)及本地环境配置。
- 建议:先在本地熟练 Git 操作,再配置 SSH 密钥连接 GitHub 远程仓库。
安装与环境验证
下载并安装 Git 后,首要任务是确认命令可用。打开终端或命令行工具:
git `--version`
若提示命令不存在,需检查安装时是否勾选了"Add Git to PATH"选项,或手动配置环境变量。
命令速用版
以下是本地初始化并推送到远程的核心命令:
git config `--global` user.name "你的用户名"
git config `--global` user.email "你的邮箱"
git init
git add .
git commit -m "首次提交"
git remote add origin <远程仓库地址>
git push -u origin main
注意:最后一行分支名可能是 main 或 master,请根据远程仓库实际默认分支调整。
为什么会这样
Git 是一个分布式版本控制系统,主要运行在本地计算机上,不需要依赖网络就能完成大部分代码管理工作,它记录每次代码修改的历史,方便回滚和对比。GitHub 则是一个基于 Git 的代码托管平台,需要依托网络才能使用,它提供公共仓库存储、协作功能(如 Pull Request、Issue)和社区交流。
简单类比:Git 就像 Word 文档的“保存历史版本”功能,你可以在自己电脑上随时回退;GitHub 就像把文档上传到云端并邀请别人一起编辑、评论。
分步处理
1. 绑定账户信息
这是提交的必填身份标识,配置一次即可:
git config `--global` user.name "你的 GitHub 用户名"
git config `--global` user.email "你的 GitHub 邮箱"
2. 生成并配置 SSH 密钥
为了安全上传代码,推荐配置 SSH 密钥。本地生成密钥:
ssh-keygen -t ed25519 -C "你的邮箱"
兼容提示:若系统提示不支持 ed25519,可使用 ssh-keygen -t rsa -b 4096 -C "你的邮箱"。
将生成的公钥(通常在 ~/.ssh/id_ed25519.pub 或 ~/.ssh/id_rsa.pub)复制到 GitHub 网站的 Settings -> SSH and GPG keys 中。
3. 初始化仓库并关联远程
在项目文件夹内初始化 Git,添加远程仓库地址,然后推送代码。确保远程仓库已在 GitHub 网站创建好。
怎么验证是否生效
本地验证:执行 git status 查看工作区状态,执行 git log `--oneline` 查看提交历史。
远程验证:登录 GitHub 网站,进入对应的仓库页面,检查文件列表是否更新,提交记录是否同步显示。
连接验证:执行 ssh -T git@github.com,若显示欢迎信息则表示 SSH 连接成功。
常见报错与解决方案
- Permission denied (publickey):SSH 密钥未配置或公钥未上传至 GitHub。重新生成密钥并检查 GitHub 设置。
- fatal: remote origin already exists:远程地址已配置过。执行
git remote set-url origin <新地址>修改。 - error: failed to push some refs:分支名称不匹配。检查远程默认分支是 main 还是 master,使用
git branch -a查看。 - git: command not found:环境变量未配置。重启终端或重新安装 Git 并勾选添加 PATH 选项。
常见坑
- 密钥权限问题:私钥文件权限设置不当可能导致 SSH 连接失败,确保私钥仅自己可读(chmod 600)。
- 忽略文件:提交前务必配置
.gitignore,避免将密码、密钥或临时编译文件上传到仓库。 - 网络环境:国内访问 GitHub 可能不稳定,若推送失败可检查网络连接或配置代理。