作为新手,要如何使用 GitHub?
一、先搞清楚两个概念:Git 和 GitHub
很多新手会把 Git 和 GitHub 混为一谈,先把这个搞清楚:
| 概念 | 是什么 | 类比 |
|---|---|---|
| Git | 一个安装在电脑上的版本控制工具 | 你手里的本地记账本 |
| GitHub | 一个在线的代码托管平台 | 存在云端的共享副本 |
Git 负责在本地记录每一次代码修改,让你可以随时回退到任意历史版本。GitHub 则把你本地的代码仓库同步到云端,既能备份,也方便多人协作。
两者关系:你用 Git 在本地管理代码,然后通过 Git 命令把代码推送到 GitHub 上。
二、安装与配置
2.1 注册 GitHub 账号
访问 GitHub 官网,点击右上角的“Sign up”,填写用户名、邮箱和密码。用户名建议用英文,避免后续命令行操作时遇到不必要的问题。
注册完成后,去邮箱里点一下验证链接,账号就激活了。
2.2 安装 Git
Windows 用户:
-
访问 Git 官网下载页面
-
下载
.exe安装包 -
运行安装程序,一路点击“下一步”,全部保持默认选项即可
-
安装完成后,在开始菜单里找到“Git Bash”,打开后输入
git --version,看到版本号就说明安装成功
Mac 用户:
-
打开终端(Terminal),输入
git --version -
如果没装,系统会自动弹出提示安装 Xcode Command Line Tools,点击确认等待完成即可
Linux 用户(Ubuntu/Debian):
bash
sudo apt update sudo apt install git git --version # 验证安装
2.3 配置 Git 身份信息
这一步非常关键。Git 的每一次提交都会记录作者信息,如果不配置,后面的操作会报错。
打开终端或 Git Bash,输入:
bash
git config --global user.name "你的GitHub用户名" git config --global user.email "你的注册邮箱"
--global 代表全局配置,意思是对这台电脑上的所有 Git 仓库都生效。配置完成后可以用以下命令查看是否生效:
bash
git config --list
你应该能看到 user.name 和 user.email 已经出现在列表里。
2.4 (推荐)配置 SSH 免密登录
默认情况下,每次向 GitHub 推送代码都需要输入用户名和密码(现在密码已被 Token 替代)。配置 SSH 密钥后可以实现免密操作,大大提高日常效率。
第一步:生成 SSH 密钥
在终端中输入:
bash
ssh-keygen -t ed25519 -C "你的注册邮箱"
系统会询问:
-
保存路径:直接按回车(用默认的
~/.ssh/id_ed25519) -
是否设置密码:直接按回车(留空即可)
第二步:复制公钥
bash
cat ~/.ssh/id_ed25519.pub
复制输出的全部内容(以 ssh-ed25519 开头,以邮箱结尾)。
第三步:添加到 GitHub
-
登录 GitHub,点击右上角头像 → Settings
-
左侧菜单选择 SSH and GPG keys
-
点击 New SSH Key
-
标题随便写(比如“我的电脑”),把公钥粘贴到 Key 框中
-
点击 Add SSH Key
第四步:测试连接
bash
ssh -T git@github.com
如果看到 Hi 用户名! You've successfully authenticated...,就说明配置成功了。
三、Git 核心工作流程
3.1 基本概念
在学习命令之前,先理解 Git 的三个核心区域:
| 区域 | 说明 | 类比 |
|---|---|---|
| 工作区 | 你电脑上正在编辑的文件 | 你的草稿纸 |
| 暂存区 | 准备提交的修改清单 | 你列好的待办事项 |
| 本地仓库 | 已经记录到 Git 历史中的版本 | 正式存档 |
对应的三个核心命令:
bash
git add . # 把修改放入暂存区 git commit -m "说明" # 把暂存区的内容存入本地仓库 git push # 把本地仓库推送到 GitHub
四、常见操作场景
4.1 场景一:从 GitHub 拉取别人的代码
如果你想参与别人的开源项目,或者把自己 GitHub 上的仓库下载到本地:
bash
git clone 仓库地址
如何获取仓库地址:在 GitHub 仓库页面,点击绿色的 Code 按钮,会看到两种地址:
-
HTTPS:
https://github.com/用户名/仓库名.git(需要输入账号密码/Token) -
SSH:
git@github.com:用户名/仓库名.git(如果已配置 SSH 免密,用这个更方便)
如果要下载特定的分支:
bash
git clone -b 分支名 仓库地址
4.2 场景二:从零开始创建项目并上传
第一步:在 GitHub 上新建仓库
-
登录 GitHub,点击右上角的 “+” → New repository
-
填写仓库名称(Repository name),比如
my-first-project -
选择 Public(公开)或 Private(私有)
-
不要勾选“Initialize this repository with a README”(否则后面会冲突)
-
点击 Create repository
第二步:在本地初始化 Git 仓库
进入你的项目文件夹:
bash
cd 项目文件夹路径 git init # 把这个文件夹变成 Git 仓库
第三步:添加并提交文件
bash
git add . # 把所有文件加入暂存区 git commit -m "first commit" # 提交到本地仓库
第四步:关联远程仓库并推送
bash
git remote add origin 你的仓库地址 # 关联 GitHub 上的空仓库 git branch -M main # 确保分支名为 main git push -u origin main # 首次推送(-u 会建立追踪关系)
第一次使用 HTTPS 方式推送时,会弹出登录窗口,输入 GitHub 用户名和密码(密码需要换成 Personal Access Token)。
第五步:之后的日常操作
bash
git add . git commit -m "更新说明" git push
4.3 场景三:修改代码后提交
当你修改了代码,想要提交新版本:
bash
# 查看当前状态——哪些文件被修改了 git status # 添加指定文件 git add 文件名 # 只添加某个文件 git add . # 添加当前目录所有修改 # 提交 git commit -m "这次修改了什么" # 推送到 GitHub git push
4.4 场景四:拉取远程最新的更新
如果多人协作,别人已经在 GitHub 上更新了代码,你需要把最新版本同步到本地:
bash
git pull
这条命令等价于 git fetch + git merge。它会从远程拉取最新代码,并自动合并到你当前的分支。如果出现冲突,需要手动解决后再提交。
五、分支与 Pull Request——协作的核心
5.1 什么是分支
每个仓库默认有一个主分支叫 main(老项目叫 master)。对于多人协作的项目,直接在 main 上改代码是很危险的。分支解决了这个问题——相当于给代码库创建了一个独立的“副本”,你在副本上开发新功能,不会影响主代码的稳定性。
bash
# 查看所有本地分支(当前分支会带 * 号) git branch # 创建新分支 git branch 新分支名 # 切换到新分支 git checkout 新分支名 # 更推荐的做法:创建并切换到新分支(一步到位) git checkout -b 新分支名
在新分支上做完修改后:
bash
git add . git commit -m "功能说明" git push origin 新分支名 # 把新分支推送到 GitHub
5.2 什么是 Pull Request
Push 是从本地推送到远程。Pull Request 则是向项目维护者“申请”把你的修改合并到主分支。很多人听到“Pull Request”这个名称可能第一反应是“拉取请求”,但在实践中,它更像是“请求对方拉取我的代码并合并”。
操作流程:
-
你把新分支推送到 GitHub
-
在 GitHub 仓库页面上,会看到一个 “Compare & pull request” 按钮
-
点击后填写 PR 标题和说明,描述你改了哪些东西
-
提交 PR,等待项目维护者审核
-
审核通过后,代码会被合并到主分支
PR 是代码审查的标准流程,也是开源协作的核心方式。
六、新手常见问题与避坑
6.1 推送时提示身份验证失败
现象:
text
fatal: Authentication failed for 'https://github.com/...'
原因与解决方案:
-
HTTPS 方式需要 Token:GitHub 已于 2021 年 8 月 13 日起禁用密码认证,需使用 Personal Access Token 替代密码。在 GitHub Settings → Developer settings → Personal access tokens → Tokens (classic) 生成一个新 Token,复制后,推送时在密码框粘贴 Token 即可。
-
建议配置 SSH:一劳永逸解决认证问题,见 2.4 节。
6.2 提交了不该提交的文件
现象:不小心把 node_modules、.env 密码文件或临时文件提交上去了。
解决方案:
-
在项目根目录创建
.gitignore文件 -
把不想提交的文件名或目录写进去:
text
node_modules/ .env *.log .DS_Store
-
执行
git rm -r --cached .清除所有已跟踪内容,再重新添加并提交
GitHub 官方维护了一个 .gitignore 模板库,针对不同编程语言和框架提供了现成的 .gitignore 文件。新手可以参考这些模板,避免遗漏常见需要忽略的文件类型。
6.3 忘记先 pull,推送时提示冲突
现象:
text
error: failed to push some refs to '...' hint: Updates were rejected because the remote contains work...
解决步骤:
-
先拉取最新代码:
git pull -
如果有冲突,手动解决冲突(Git 会在冲突文件里标注
<<<<<<<和>>>>>>>) -
解决后重新提交:
git add .→git commit -m "合并冲突"→git push
6.4 提交信息写错了想改
如果只是想修改上一次提交的说明:
bash
git commit --amend -m "新的提交信息"
如果已经推送到了远程,需要强制推送(慎用,团队项目中不建议):
bash
git push --force-with-lease
6.5 合并冲突的通用解决思路
当你执行 git pull 或合并分支时,如果同一个文件的同一行被不同的人修改过,Git 无法自动决定保留哪个版本,就会标记为冲突。标记格式如下:
text
<<<<<<< HEAD 你本地的代码 ======= 远程分支的代码 >>>>>>> branch-name
解决方法是:手动编辑文件,保留你需要的那部分(或者综合两者),删掉 <<<<<<<、======= 和 >>>>>>> 标记,然后重新提交。
七、新手建议
7.1 先从图形化工具开始
新手可能被命令行吓到。GitHub 官方提供了 GitHub Desktop,界面直观,适合刚开始接触 Git 的开发者。理解基本概念后,再逐步过渡到命令行。VS Code 等主流编辑器也内置了 Git 图形化操作。
7.2 README 好好写
每个仓库最好都有一个 README.md 文件,用 Markdown 语法写清楚:
-
项目是做什么的
-
怎么安装和运行
-
怎么使用
一个清晰的 README 会让人更愿意使用和参与你的项目。
7.3 开源许可证要选
如果你的仓库是公开的,建议添加一个 LICENSE 文件,说明别人可以怎么使用你的代码。如果不选许可证,法律上默认“保留所有权利”,别人不能随意使用你的代码。
常见许可证:
-
MIT:最宽松,随便用,随便改
-
Apache 2.0:MIT 基础上增加了专利授权
-
GPL:要求衍生代码也开源
7.4 多用“搜索”和“看别人怎么写”
GitHub 上有数百万开源项目,遇到问题时:
-
搜别人写的优秀仓库,看看他们的代码结构
-
搜索
.gitignore模板,避免自己从头想 -
看别人的
README.md怎么写
这是新手成长最快的方式。
八、常用命令速查表
| 操作 | 命令 |
|---|---|
| 初始化仓库 | git init |
| 克隆仓库 | git clone 地址 |
| 查看状态 | git status |
| 添加文件 | git add . 或 git add 文件名 |
| 提交 | git commit -m "说明" |
| 推送 | git push |
| 拉取更新 | git pull |
| 查看分支 | git branch |
| 创建并切换分支 | git checkout -b 新分支名 |
| 切换分支 | git checkout 分支名 |
| 查看提交历史 | git log |
| 查看远程仓库 | git remote -v |
九、最后
新手入门 GitHub,记住三件事就够了:
-
先理解 Git 的三个区域:工作区 → 暂存区 → 本地仓库 → 远程仓库
-
记住三个核心命令:
git add→git commit→git push -
遇到问题先搜:Git 的错误提示已经非常成熟,把报错信息复制到搜索引擎,大概率能找到答案
一步一步来,Git 就会成为你工作中离不开的工具。
更多推荐




所有评论(0)