6.7 KiB
Git零基础使用指南
一、Git是什么
Git是一个专门用来记录文件变化的工具。你可以把它想象成游戏的存档系统:每次存档后,即使后面改坏了,也能读档回到之前的状态。 因此它最常用的场景是:管理代码、和别人协作开发、进行备份与还原等等。
二、安装与初始配置
1. 安装
- Windows:到git-scm.com下载安装包,一路默认下一步即可。如果速度很慢,可以直接在网上搜索镜像站,加速github上的原始下载链接。
- Mac:终端输入
git --version,如果提示安装就跟着装。 - GNU/Linux:不同发行版不一样,不过你都用Linux,总不可能这个都不会,因此这里不赘述了。
安装完后,打开终端(Windows用cmd或者powershell),输入:
git --version
能显示版本号就说明装好了。
2. 配置身份
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
这两行是告诉Git你是谁,只是自己用的话随便填也行,但建议用真实信息。
三、Git核心概念
- 工作区:你正在编辑的文件所在的文件夹。
- 暂存区:一个临时存放区,你要把想保存的改动先放在这里,然后才能正式提交到版本库。暂存区的东西可以随时增删,方便你临时改动。
- 版本库:真正保存提交记录和所有文件的地方。
- 提交:一次上传+保存,把暂存区的内容永久记录下来,成为版本库的内容。
核心流程就是:改文件 → 加到暂存区 → 提交到版本库。
四、常用操作
- 注:如果你使用VS等IDE或者VS Code等富文本编辑器,一般会自带Git管理工具,不用你直接输入指令,直接点UI上的按钮就行。但你只是不需要手动输入命令,仍然需要掌握命令的具体功能和含义。
1.创建一个新仓库
进入你的项目文件夹,在这个目录下打开终端,执行:
git init
这会在这个文件夹里创建一个 .git 目录(在Windows上会直接显示出来,其他UNIX/UNIX-like系统会隐藏),从此它就被Git管理了。
2.查看当前状态
git status
它会告诉你哪些文件改了、哪些还没提交。不知道下一步该干嘛时就敲它。
3.把改动加入暂存区
git add 文件名 # 添加某个文件
git add . # 添加所有改动
这样就会把文件丢到暂存区。
4. 提交
git commit -m "说明这次改了什么"
引号里写简短说明,比如 "修复登录按钮失效"。提交之后就会,暂存区里的东西就会变成版本库里的东西。
5.查看历史
git log # 详细历史
git log --oneline # 一行一条格式的历史
五、和远程仓库配合
1. 把本地仓库连到远程,上传本地文件到远程
先在Git服务器(可以是Github,或者任意Git服务器)上新建一个空仓库,然后执行:
git remote add origin 仓库地址
git branch -M main
git push -u origin main
之后每次上传文件只需要执行:
git push
2. 把远程仓库的内容复制到本地
git clone 仓库地址
这样就可以把服务器上保存的文件,全部一股脑地下载下来。
3. 拉取别人的更新
git pull
如果你的本地仓库落后于远程仓库,就需要使用这个命令,来更新你自己的本地仓库。
六、创建和合并分支
分支让你在不影响主干的情况下进行修改。类似于你要开发一个软件的测试版,但是又不希望影响已经有的正式版,就需要创建分支。等你觉得这个测试版已经够稳定了,就可以把它的更新内容扔进正式版(合并分支到主干)。以下是它常用的命令:
git branch # 查看所有分支
git branch 新分支名 # 创建新分支
git checkout 分支名 # 切换你要的分支
git checkout -b 新分支名 # 创建并切换你要的分支
合并分支的命令:
git checkout main #先切换回主干
git merge 要合并的分支名
七、后悔药:撤销操作
如果你改乱了文件,想还原:
git checkout -- 你要还原的文件名
如果你是已经 git add 了,想撤回暂存区的内容:
git reset 要撤回的文件名
如果你已经 git commit 了,想撤销这次提交但保留改动:
git reset --soft 提交编号
如果想彻底回滚到某次提交(相当于还原回旧版本的备份):
git reset --hard 提交编号
提交编号用 git log --oneline 查看。
八、日常最典型的一套流程
git pull # 先从远程仓库拉取最新代码
# ...然后你疯狂在本地仓库里改代码...
git status # 看看改了啥
git add . # 全部加入本地的暂存
git commit -m "完成登录功能" # 把本地的暂存正式保存到本地的版本库
git push # 把你的更新上传到远程仓库,这样别人也能下载更新了
记住这五步,80% 的日常使用就够了。但是大型合作项目,由于人数众多,你提交的git push别人不一定能马上下载,反之同理。这个时候就需要开分支,大家各改各的,互相不干扰,最后分别合并回主干即可。
九、常见问题
push 时要求输入账号密码? 现在GitHub不支持密码推送,需要用 Personal Access Token(在 GitHub 设置里生成)代替密码。 如果不是Github,就用你在这个Git服务器里注册的账号和密码就行。
文件冲突了怎么办?
git pull 或 merge 时如果提示冲突,打开冲突文件,会看到 <<<<<<< 和 >>>>>>> 标记,手动选择保留哪部分,删掉标记,然后重新git add + git commit就可以了。
提交信息写错了想改?
非常简单:
git commit --amend -m "新的说明"
不想让某些文件被Git管理?
在项目根目录建一个 .gitignore 文件,把文件名或文件夹写进去,比如:
node_modules/ #某个文件夹下的所有文件
*.log #所有的某个类型的文件
.env #某个特定的单个文件
十、学习建议
- 先在自己的文件夹里反复练
add / commit / log / status。 - 熟练后再连接到Git服务器练习
push / pull / clone。 - 遇到报错先别慌,把报错信息读一遍,多数提示已经告诉你该怎么做。实在不行就扔给AI。
Git的命令很多,但日常真正高频的就上面这几个。先把这套流程跑顺,剩下的用到再查文档即可。