소스 정보
- 저장소
- an8079/take-skills
- 최근 소스 활동
- 2026년 3월 30일 10:22
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 4
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/an8079/take-skills --skill git-troubleshooter명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | git-troubleshooter |
| description | Git常见问题排查与修复,包括冲突处理、回退、清理、cherry-pick、reflog恢复等疑难杂症 |
| triggers | ["git冲突","git回退","git错误","git恢复","git reset","git rebase失败","git分支乱了"] |
Git出问题了别慌!这个skill帮你诊断并修复所有常见Git疑难杂症。
主要使用 exec 工具执行Git命令
识别:
<<<<<<< HEAD
当前分支的内容
=======
incoming分支的内容
>>>>>>> feature-branch
解决方法(三步走):
步骤1:查看冲突文件
git status # 列出所有冲突文件
git diff --name-only --diff-filter=U # 仅列出有冲突的文件
步骤2:手动解决冲突
编辑冲突文件,保留需要的部分,删除 <<<<<<<、=======、>>>>>>> 标记
步骤3:标记解决完成
git add <冲突文件>
git commit -m "fix: resolve merge conflict in XXX"
快捷工具:
# 用ours/theirs快速选择
git checkout --ours <file> # 保留当前分支版本
git checkout --theirs <file> # 保留合并分支版本
# 或用git checkout的保留策略
git merge -X ours <branch> # 自动用ours策略合并
git merge -X theirs <branch> # 自动用theirs策略合并
场景A:还没push,想重置本地
# 回退最近1次提交,保留改动
git reset --soft HEAD~1
# 回退最近1次提交,不保留改动(危险!)
git reset --hard HEAD~1
# 回退到指定commit
git reset --hard <commit-hash>
场景B:已经push了,想撤销
# 安全撤销:创建新提交来"反做"指定提交
git revert <commit-hash>
# 撤销最近1次提交
git revert HEAD
场景C:想回到某个tag
git reset --hard v1.0.0
git push --force origin <branch>
# 找到丢失分支的commit
git reflog
# 输出示例:
# abc1234 HEAD@{0}: checkout: moving from feature-x to main
# def5678 HEAD@{1}: commit: add new feature
# 恢复分支
git checkout -b <分支名> <commit-hash>
# 示例:
git checkout -b feature-x def5678
或者用 HEAD@{n} 直接恢复:
git checkout -b recovered-branch HEAD@{5}
停在了冲突点:
# 解决完冲突后
git add .
git rebase --continue
# 想放弃rebase,恢复原状
git rebase --abort
已经手动reset了?用reflog恢复:
git reflog | grep rebase
git reset --hard ORIG_HEAD
# 暂存当前改动
git stash
git stash save "临时stash: XXX改动"
# 查看暂存列表
git stash list
# 恢复最新stash
git stash pop
# 恢复指定stash
git stash apply stash@{0}
# 删除stash
git stash drop stash@{0}
# 撤销单个文件
git checkout -- <file>
git restore <file> # 新语法
# 撤销所有未提交的文件
git checkout -- .
git restore .
原因:远程有更新的提交
解决方法:
# 方法1:先拉取再push
git pull --rebase origin <branch>
git push origin <branch>
# 方法2:强制push(小心!)
git push --force origin <branch>
# 简洁日志
git log --oneline -10
# 图形化分支
git log --graph --oneline --all
# 查找特定内容
git log -S "关键词" --oneline
# 查看某个文件的历史
git log -p <file>
# 找出谁改了某行
git blame <file>
| 操作 | 危险等级 | 恢复方式 |
|---|---|---|
git reset --hard | 🔴 高 | git reflog 恢复 |
git push --force | 🔴 高 | git reflog + 远程恢复 |
git checkout . | 🟡 中 | 无法恢复 |
git clean -fd | 🔴 高 | 无法恢复(做好备份) |
最佳实践:危险操作前先 git branch backup 创建备份分支