Git 基本命令
本章将介绍 Git 最常用的基本命令,帮助你掌握日常开发中的核心操作。
文件状态管理
查看状态
git status
git status -s # 简洁模式
添加文件到暂存区
# 添加单个文件
git add filename.txt
# 添加所有修改的文件
git add .
# 添加所有 .txt 文件
git add *.txt
# 交互式添加
git add -p
撤销修改
# 撤销工作区的修改(未添加到暂存区)
git checkout -- filename.txt
# 从暂存区移除文件(但保留工作区修改)
git reset HEAD filename.txt
# 撤销所有未提交的修改
git reset --hard HEAD
提交更改
基本提交
git commit -m "提交说明"
修改最后一次提交
# 修改提交信息
git commit --amend -m "新的提交信息"
# 添加文件到上次提交
git add forgotten_file.txt
git commit --amend --no-edit
查看提交历史
git log
git log --oneline # 简洁模式
git log --graph # 图形化显示
git log --stat # 显示文件变更统计
git log -p # 显示具体修改内容
git log --since="2 weeks ago" # 按时间筛选
分支管理
查看分支
git branch # 查看本地分支
git branch -a # 查看所有分支(包括远程)
git branch -v # 查看分支的最后一次提交
创建和切换分支
# 创建新分支
git branch new-feature
# 切换到新分支
git checkout new-feature
# 创建并切换到新分支
git checkout -b new-feature
# 切换到上一个分支
git checkout -
合并分支
# 合并分支到当前分支
git merge feature-branch
# 使用 rebase 合并
git rebase main
删除分支
# 删除已合并的分支
git branch -d branch-name
# 强制删除未合并的分支
git branch -D branch-name
远程仓库操作
添加远程仓库
git remote add origin https://github.com/user/repo.git
查看远程仓库
git remote -v
推送代码
# 推送到远程仓库
git push origin main
# 推送新分支
git push -u origin new-branch
拉取代码
# 拉取远程更新
git pull origin main
# 获取远程更新但不合并
git fetch origin
标签管理
创建标签
# 创建轻量标签
git tag v1.0
# 创建附注标签
git tag -a v1.0 -m "版本1.0发布"
# 给特定提交打标签
git tag -a v1.0 commit-hash -m "标签说明"
查看和推送标签
# 查看标签
git tag
git show v1.0
# 推送标签到远程
git push origin v1.0
git push origin --tags # 推送所有标签
实用技巧
忽略文件
创建 .gitignore 文件来忽略不需要版本控制的文件:
# 忽略日志文件
*.log
# 忽略依赖目录
node_modules/
vendor/
# 忽略编译输出
dist/
build/
# 忽略环境配置文件
.env
查看差异
# 查看工作区和暂存区的差异
git diff
# 查看暂存区和仓库的差异
git diff --staged
# 查看两次提交的差异
git diff commit1 commit2
这些基本命令涵盖了 Git 日常使用的核心功能,熟练掌握它们将大大提高你的开发效率。