文章需要结构清晰,涵盖从入门到进阶的常用命令,结合实例和注意事项,帮助用户快速掌握Git的核心功能,并应用到实际项目中
一、仓库初始化与基础操作
1. 创建与克隆仓库
# 初始化本地仓库
git init# 克隆远程仓库(SSH方式)
git clone git@gitee.com:user/repo.git# 克隆指定分支(SSH方式)
git clone -b dev git@gitee.com:user/repo.git
2. 文件状态管理
# 查看当前状态(推荐别名:git st)
git status# 添加单个文件到暂存区
git add index.html# 添加所有修改(不包括.gitignore文件)
git add .# 交互式添加(选择部分修改)
git add -p
二、提交历史管理
1. 提交操作
# 常规提交
git commit -m "完善用户登录功能"# 修改上次提交(修正提交信息)
git commit --amend# 带详细描述的提交
git commit -m "标题" -m "详细描述..."
2. 查看历史记录
# 简洁版历史(推荐别名:git lg)
git log --oneline --graph# 显示文件变化
git log -p# 按作者过滤
git log --author="John"# 按时间过滤
git log --since="2023-01-01" --until="2023-06-30"
三、分支管理策略
1. 基础分支操作
# 查看所有分支
git branch -av# 创建并切换分支
git checkout -b feature-auth# 删除已合并分支
git branch -d old-feature# 强制删除未合并分支
git branch -D hotfix
2. 分支合并与变基
# 合并分支到当前分支
git merge feature-auth# 变基操作(保持历史线性)
git checkout feature-auth
git rebase main# 交互式变基(修改历史提交)
git rebase -i HEAD~3
四、远程协作流程
1. 远程仓库管理
# 查看远程仓库信息
git remote -v# 添加多个远程仓库
git remote add upstream git@gitee.com:other/repo.git# 修改远程仓库地址
git remote set-url origin new_url
2. 推送与拉取
# 首次推送分支
git push -u origin main# 强制推送(慎用!)
git push -f# 拉取并合并
git pull origin dev# 拉取并变基
git pull --rebase origin dev
五、撤销与恢复操作
1. 文件级撤销
# 撤销工作区修改
git checkout -- file.txt# 撤销暂存区修改
git reset HEAD file.txt
2. 提交级撤销
# 回退到指定提交(保留修改)
git reset 08a3b2d# 硬回退(慎用!丢弃修改)
git reset --hard HEAD~1# 反提交(创建新提交撤销)
git revert 08a3b2d
六、高级实用技巧
1. 储藏临时修改
# 储藏当前修改
git stash# 查看储藏列表
git stash list# 应用最近储藏
git stash pop# 应用指定储藏
git stash apply stash@{1}
2. 标签管理
# 创建标签
git tag v1.0.0# 带注释的标签
git tag -a v1.1.0 -m "正式版本发布"# 推送标签到远程
git push origin --tags
七、典型工作流示例
1. 功能开发流程
八、最佳实践建议
1. 提交规范:
# 推荐格式
<type>(<scope>): <subject># 示例
feat(user): 新增手机号登录功能
fix(payment): 修复金额计算错误
2. .gitignore 模板:
# 系统文件
.DS_Store
Thumbs.db# 开发环境
node_modules/
.env
*.log# IDE配置
.vscode/
.idea/
3. 别名配置(~/.gitconfig):
[alias]st = status -sco = checkoutbr = branchci = commitlg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
掌握这些核心命令,结合团队协作规范,您将能高效应对日常开发中的版本控制需求。建议通过实际项目练习巩固知识,遇到问题时善用 git help 查看官方文档。