常用git命令

📅 2026/7/6 6:24:15 👁️ 阅读次数 📝 编程学习
常用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

最佳实践

  1. 提交规范:遵循约定式提交(如feat: 添加新功能
  2. 分支策略:主分支保护+功能分支开发
  3. 冲突处理
    • 使用git mergetool可视化解决
    • 合并后运行测试确保代码正确性
  4. 性能优化
    • 定期执行git gc清理仓库
    • 使用git clean -fd删除未跟踪文件