常用git命令
# 设置全局用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "your@email.com"
#验证是否设置成功 git config --global --list
# 启用颜色输出
git config --global color.ui auto
1.仓库操作
# 初始化本地仓库
git init
# 克隆远程仓库
git clone https://github.com/user/repo.git
# 浅克隆(仅获取最新版本)
git clone --depth=1 https://github.com/user/repo.git
# 添加远程仓库
git remote add origin https://github.com/user/repo.git
# 修改远程仓库地址
git remote set-url origin new-url.git
# 删除远程分支
git push origin --delete old-branch
2.分支管理
# 创建并切换分支
git checkout -b new-feature
# 合并分支(禁用快进)
git merge --no-ff feature
# 交互式变基(修改最近3次提交)
git rebase -i HEAD~3
高级技巧
储藏修改:临时保存未提交的修改
git stash # 储藏当前修改
git stash pop # 应用并删除最新储藏
子模块管理:处理嵌套仓库
git submodule add https://github.com/user/subrepo.git path
git submodule update --init # 初始化子模块
3.提交历史
# 先添加所有文件
git add .
# 或添加特定文件
git add data/data_login.yaml testcases/test_login.py utils/data_loader.py
# 然后再提交
git commit -m "your message"
日志查看
# 图形化分支历史
git log --graph --oneline --all
# 按作者筛选日志
git log --author="Name" --since="2024-01-01"
# 代码变更搜索
git log -S"function_name"
撤销操作
# 撤销工作区修改
git checkout -- file.txt
# 彻底撤销提交(慎用!)
git reset --hard HEAD~1
# 创建反向提交
git revert HEAD
4.远程协作
推送与拉取
# 首次推送主分支
git push -u origin main
# 使用变基方式拉取
git pull --rebase
# 强制推送(需谨慎)
git push origin +feature
同步远程分支
# 跟踪远程分支
git checkout --track origin/remote-branch
# 清理无效远程分支引用
git remote prune origin
最佳实践
- 提交规范:遵循约定式提交(如
feat: 添加新功能) - 分支策略:主分支保护+功能分支开发
- 冲突处理:
- 使用
git mergetool可视化解决 - 合并后运行测试确保代码正确性
- 使用
- 性能优化:
- 定期执行
git gc清理仓库 - 使用
git clean -fd删除未跟踪文件
- 定期执行