Git作为分布式版本控制系统,是现代软件开发中不可或缺的工具,掌握其基础命令是高效协作和代码管理的前提,以下从环境配置、仓库操作、文件管理、分支管理、远程交互等维度,详细介绍Git入门常用命令及其使用场景。

环境配置与仓库初始化
在使用Git前,需先配置用户信息,这是提交代码时的身份标识,通过git config --global user.name "你的姓名"和git config --global user.email "你的邮箱"设置全局用户信息,若需针对特定项目配置,可去掉--global参数,配置完成后,可通过git config --list查看所有配置项。
创建本地仓库有两种方式:一是进入项目目录后执行git init,初始化一个空的Git仓库,此时目录下会生成.git隐藏文件夹,用于跟踪版本历史;二是通过git clone [仓库地址]克隆远程仓库到本地,该命令会自动下载完整代码并创建默认分支,适合参与已有项目。
文件状态与版本操作
文件状态管理是Git的核心,通过git status命令可查看工作区文件状态,包括未跟踪(Untracked)、已修改(Modified)、已暂存(Staged)等状态,结合git diff可查看文件具体修改内容:git diff查看工作区与暂存区的差异,git diff --staged查看暂存区与最新提交的差异。
当完成代码修改后,需通过git add [文件名]将文件添加到暂存区,支持通配符,如git add .可添加所有修改文件,暂存后执行git commit -m "提交说明",将暂存区内容提交到本地仓库,提交说明需清晰描述变更内容,若需修改上一次提交信息,可使用git commit --amend,会打开编辑器修改提交说明并合并到上一次提交中。

分支管理与版本切换
分支是Git实现并行开发的关键,默认分支为master或main,通过git branch查看所有本地分支,git branch [分支名]创建新分支,git checkout [分支名]或git switch [分支名](推荐使用switch,语法更清晰)切换分支,创建并切换分支可合并为一步:git checkout -b [分支名]或git switch -c [分支名]。
合并分支时,先切换到目标分支(如master),再执行git merge [源分支名],会将源分支的修改合并到当前分支,若需删除已合并的分支,使用git branch -d [分支名];若分支未合并强制删除,需加-D参数,当分支开发过程中需要临时保存修改,可通过git stash将工作区和暂存区内容保存到堆栈,git stash pop恢复并删除堆栈顶内容,git stash list查看所有保存记录。
远程仓库交互
远程仓库实现代码的备份与团队协作,常用命令包括git remote -v查看远程仓库地址,git remote add [别名] [仓库地址]添加远程仓库(默认别名为origin),git push [别名] [分支名]将本地分支推送到远程仓库(如git push origin master),git pull [别名] [分支名]从远程仓库拉取最新代码并合并到当前分支。
若需获取远程仓库更新但不合并,使用git fetch [别名],此时可通过git log -p [别名/分支名]查看差异,再手动合并;若推送时提示分支落后远程,需先执行git pull获取最新修改,解决冲突后再推送,当本地分支与远程分支关联断开时,可通过git branch --set-upstream-to=[别名/分支名]重新建立关联。

版本回溯与历史查看
通过git log查看提交历史,常用参数包括--oneline(简化提交信息)、--graph(以图形化方式展示分支合并关系)、-n [数字](显示最近n条记录),若需回退版本,git reset [版本号]会将当前分支重置到指定版本,--soft参数仅重置提交记录,保留工作区和暂存区;--mixed(默认)重置提交记录和暂存区;--hard重置提交记录、暂存区和工作区(慎用,会导致未提交修改丢失)。
当需要查看某个文件的修改历史,使用git log [文件名],或通过git show [版本号]查看某次提交的详细修改内容,若误删文件,可通过git checkout [版本号] -- [文件名]从历史版本中恢复文件。
常用命令速查表
| 功能分类 | 命令示例 | 说明 |
|---|---|---|
| 环境配置 | git config --global user.name "xxx" | 设置全局用户名 |
| 仓库初始化 | git init / git clone [地址] | 初始化本地仓库/克隆远程仓库 |
| 文件状态查看 | git status / git diff | 查看文件状态/查看修改内容 |
| 暂存与提交 | git add . / git commit -m "msg" | 添加所有文件到暂存区/提交到本地仓库 |
| 分支操作 | git branch / git checkout -b dev | 查看分支/创建并切换分支 |
| 远程仓库交互 | git push origin master / git pull | 推送到远程仓库/拉取远程更新 |
| 版本回溯 | git reset --hard [版本号] | 硬重置到指定版本 |
相关问答FAQs
Q1: 提交代码时提示“Please tell me who you are”怎么办?
A: 这是因为未配置Git用户信息,需执行全局配置命令:git config --global user.name "你的姓名"和git config --global user.email "你的邮箱",配置后即可正常提交。
Q2: 合并分支时出现冲突如何解决?
A: 冲突发生时,Git会在冲突文件中标记冲突标记(如<<<<< HEAD、、>>>>>> 分支名),需手动编辑文件,删除标记并保留需要的代码,然后执行git add [文件名]将解决冲突的文件加入暂存区,最后通过git commit完成合并。
