在日常开发中,版本控制是每个程序员都绕不开的工具。无论是个人项目还是团队协作,掌握一些常用的版本控制操作能极大提升工作效率。Git 是目前最流行的版本控制系统,下面这些操作几乎每天都会用到。
初始化仓库
新建一个项目时,第一步通常是初始化 Git 仓库。进入项目目录后执行:
git init
这会在当前目录生成一个隐藏的 .git 文件夹,用来记录所有版本信息。
克隆远程仓库
从远程服务器获取代码,比如从 GitHub 或 GitLab 下载项目,使用 clone 命令:
git clone https://github.com/username/project.git
执行后会自动创建项目文件夹并下载全部代码和历史记录。
查看文件状态
修改了文件之后,想看看哪些文件被改动过,可以用:
git status
它会列出已修改、未提交、新增但未跟踪的文件,帮助你清楚当前工作区的状态。
添加文件到暂存区
准备提交前,需要先把改动加入暂存区。比如只想提交某个文件:
git add index.html
如果想把所有改动都加入,可以使用:
git add .
提交更改
提交是保存当前快照的关键步骤。加上 -m 参数可以直接写提交信息:
git commit -m "修复登录页面样式问题"
清晰的提交信息能让后续排查问题更轻松,就像给自己留便条。
查看提交历史
想知道项目都经历了哪些变更,运行:
git log --oneline
每条记录会显示简短的哈希值和提交信息,方便快速浏览。
创建和切换分支
开发新功能时,通常会新建一个分支,避免影响主干代码:
git checkout -b feature/user-login
这条命令同时完成创建和切换。完成后就可以在这个分支上自由修改,不会干扰其他人。
推送代码到远程仓库
本地提交后,要把代码同步到远程服务器,比如推送到 GitHub:
git push origin main
如果是新建分支首次推送,可能需要设置上游分支:
git push -u origin feature/user-login
拉取最新代码
别人提交了新代码,你想更新到本地,使用 pull 命令:
git pull origin main
它相当于先 fetch 再 merge,能快速合并远程的最新改动。
撤销修改
有时候改错了文件,还没提交,可以用下面命令恢复到上次提交的状态:
git checkout -- app.js
如果已经提交但想撤回,可以回退最后一次提交:
git reset --soft HEAD~1
这样代码保留,但提交记录会撤销,适合修改提交信息或重新组织提交内容。
合并分支
当一个功能开发完成,要把分支合并回主干:
git checkout main
git merge feature/user-login
合并前建议先拉取最新代码,避免冲突。如果出现冲突,Git 会标记出冲突位置,手动修改后再提交即可。