网淘吧来吧,欢迎您!

返回首页 微信
微信
手机版
手机版

Git技能使用说明

2026-03-26 新闻来源:网淘吧 围观:97
电脑广告
手机广告

何时使用

当任务涉及Git仓库、分支、提交、合并、变基、拉取请求、冲突解决、历史检查或恢复时使用。此技能是无状态的,默认应在任何涉及Git工作的任务中应用。

快速参考

主题文件
基本命令commands.md
高级操作advanced.md
分支策略branching.md
冲突解决conflicts.md
历史与恢复history.md
团队工作流collaboration.md

核心规则

  1. 切勿强制推送到共享分支— 仅在功能分支上使用--force-with-lease早提交,常提交
  2. — 小提交更易于审查、回退和二分查找编写有意义的提交信息
  3. — 首行不超过72字符,使用祈使语气推送前先拉取
  4. — 推送前始终执行git pull --rebase以避免合并提交合并前清理
  5. — 使用git rebase -i压缩修复提交团队工作流

功能分支流程:

从主分支执行

  1. git checkout -b feature/名称进行提交,定期推送
  2. 开启拉取请求,获取审查
  3. 压缩并合并到主分支
  4. 删除功能分支
  5. 热修复流程:

Hotfix Flow:

  1. git checkout -b hotfix/issue从主分支
  2. 修复、测试、提交
  3. 合并到主分支和开发分支(如果存在)
  4. 标记发布版本

每日同步:

git fetch --all --prune
git rebase origin/main  # 如果团队偏好,也可以使用合并

提交信息

  • 使用约定式提交格式:类型(作用域): 描述
  • 首行保持在72个字符以内
  • 类型:feat,fix,docs,style,refactor,test,chore

推送安全

  • 使用git push --force-with-lease而不是--force——防止覆盖他人的工作
  • 如果推送被拒绝,先运行git pull --rebase再重试
  • 切勿强制推送到主分支/主分支

冲突解决

  • 编辑完冲突文件后,确认没有残留标记:grep -r "<<<\|>>>\|===" .
  • 在完成合并前,测试代码是否能正常构建
  • 如果合并变得复杂,使用git merge --abort中止,然后尝试git rebase而是

分支维护

  • 本地删除已合并的分支:git branch -d 分支名称
  • 清理远程跟踪:git fetch --prune
  • 创建 PR 前,将功能分支变基到最新的主分支上
  • 使用git rebase -i在推送前压缩杂乱的提交

安全检查清单

在执行破坏性操作(reset --hardrebaseforce push)之前:

  • 这是共享分支吗? → 不要重写历史
  • 我有未提交的更改吗? → 先暂存或提交
  • 我在正确的分支上吗? →git branch来确认
  • 远程仓库是最新的吗? →git fetch

常见陷阱

  • git user.email 错误— 在重要提交前使用git config user.email验证
  • 空目录— Git 不跟踪它们,添加.gitkeep
  • 子模块— 始终使用--recurse-submodules
  • 克隆分离的 HEAD— 使用git switch -
  • 返回上一个分支推送被拒绝git pull --rebase首先
  • 冲突时使用 stash pop— 储藏内容会消失。请改用stash apply大文件
  • — 对于大于50MB的文件使用Git LFS,切勿提交敏感信息大小写敏感性
  • — Mac/Windows忽略大小写,Linux则不然 — 可能导致CI失败恢复命令

撤销最后一次提交但保留更改:

  • git reset --soft HEAD~1丢弃未暂存的更改:
  • git restore 文件名查找丢失的提交:
  • git reflog(保留约90天的历史记录)恢复已删除的分支:
  • git checkout -b 分支名 <来自reflog的sha值>使用
  • Usegit add -p用于在提交混合了多个更改时进行部分暂存

使用二分法进行调试

查找引入错误的提交:

git bisect start
git bisect bad                    # 当前提交存在问题
git bisect good v1.0.0            # 此版本正常工作
# Git 检出中间提交,测试后:
git bisect good                   # 或 git bisect bad
# 重复直到 Git 找到问题提交
git bisect reset                  # 返回原分支

快速概览

git status -sb                    # 带分支信息的简洁状态
git log --oneline -5              # 最近 5 条提交
git shortlog -sn                  # 按提交数统计贡献者
git diff --stat HEAD~5            # 最近 5 次提交的变更摘要
git branch -vv                    # 带跟踪信息的分支列表
git stash list                    # 待处理的储藏列表

相关技能

安装方式clawhub install <slug>若用户确认:

  • gitlab— GitLab CI/CD 与合并请求
  • docker— 容器化工作流
  • code— 代码质量与最佳实践

反馈

  • 若觉有用:clawhub star git
  • 保持更新:clawhub sync

天猫隐藏优惠券

网淘吧

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第286180名访客 今日有164篇新文章/评论