技能 git-advanced-workflows
📦

git-advanced-workflows

安全

Meistern Sie erweiterte Git-Workflows

也可从以下获取: wshobson

Entwickler haben Schwierigkeiten mit komplexen Git-Operationen wie dem Umschreiben von Historie und der Wiederherstellung nach Fehlern. Diese Skill bietet umfassende Anleitung zu erweiterten Git-Befehlen einschließlich Rebase, Cherry-Pick, Bisect, Worktrees und Reflog, um eine saubere Historie zu pflegen und sich aus jeder Situation zu erholen.

支持: Claude Codex Code(CC)
🥉 75 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“git-advanced-workflows”。 Wie bereinige ich meine Commit-Historie, bevor ich einen Pull Request erstelle?

预期结果:

Verwenden Sie interaktives Rebase, um Ihre Commits zu bereinigen. Führen Sie 'git rebase -i main' aus, um Ihre letzten mehreren Commits zu bearbeiten. Sie können mehrere Commits zusammen squashen (s), Commit-Nachrichten umschreiben (r) oder unnötige Commits entfernen (d). Erstellen Sie zuerst immer einen Backup-Branch mit 'git branch backup-branch', bevor Sie die Historie umschreiben.

正在使用“git-advanced-workflows”。 Ich habe versehentlich meinen Branch zurückgesetzt und meine Commits verloren. Wie kann ich sie wiederherstellen?

预期结果:

Verwenden Sie git reflog, um Ihre verlorenen Commits zu finden. Führen Sie 'git reflog' aus, um eine Historie aller Ref-Updates zu sehen. Finden Sie den Commit-Hash vor dem Reset und stellen Sie mit 'git reset --hard <commit-hash>' wieder her oder erstellen Sie einen Branch mit 'git branch recovered-branch <commit-hash>'. Reflog behält die Historie für 90 Tage.

安全审计

安全
v1 • 2/25/2026

All static findings are false positives. The skill is a documentation guide for Git commands - the flagged 'external_commands' are Git examples in markdown code blocks, 'filesystem' findings are legitimate worktree relative paths, and 'weak cryptographic algorithm' was a misidentification. This is safe, legitimate educational content.

1
已扫描文件
415
分析行数
0
发现项
1
审计总数
未发现安全问题

检测到的模式

External Command Detection (False Positive)Path Traversal Detection (False Positive)Cryptographic Algorithm Detection (False Positive)
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
100
规范符合性

你能构建什么

Feature-Branch vor Pull Request bereinigen

Verwenden Sie interaktives Rebase, um Commits zu squashen, neu anzuordnen und Commit-Nachrichten zu bereinigen, bevor Sie in den Main-Branch mergen

Fehler-Einführungspunkt finden

Verwenden Sie die binäre Suche von git bisect, um schnell den Commit zu lokalisieren, der eine Regression eingeführt hat

Von Git-Fehlern erholen

Verwenden Sie reflog, um Commits oder Branches wiederherzustellen, die versehentlich gelöscht oder zurückgesetzt wurden

试试这些提示

Anleitung für interaktives Rebase
Helfen Sie mir, interaktives Rebase zu verwenden, um meinen Feature-Branch zu bereinigen. Ich möchte meine letzten 5 Commits zu einem sauberen Commit mit einer guten Nachricht squashen.
Cherry-Pick eines Commits
Wie cherry-picke ich einen spezifischen Commit von einem anderen Branch auf meinen aktuellen Branch? Der Commit-Hash ist abc123.
Fehlerhaften Commit finden
Ich muss herausfinden, welcher Commit einen Fehler eingeführt hat. Wie verwende ich git bisect, um systematisch durch meine Commit-Historie zu suchen?
Worktree-Einrichtung
Zeigen Sie mir, wie ich einen Git-Worktree einrichte, damit ich an einem Hotfix arbeiten kann, während ich meine aktuelle Feature-Arbeit intakt halte.

最佳实践

  • Erstellen Sie immer einen Backup-Branch, bevor Sie destruktive Git-Operationen wie Rebase oder Reset durchführen
  • Verwenden Sie --force-with-lease anstelle von --force beim Pushen von umgeschriebener Historie, um zu verhindern, dass die Arbeit anderer überschrieben wird
  • Führen Sie Tests nach Rebase-Operationen durch, um sicherzustellen, dass die umgeschriebene Historie keine Funktionalität gebrochen hat

避免

  • Rebasing von öffentlichen Branches, die andere Entwickler bereits gepullt haben - dies verursacht Historie-Konflikte für Mitarbeiter
  • Verwendung von 'git push --force', ohne zu prüfen, ob andere neue Änderungen auf das Remote gepusht haben
  • Ausführen von git bisect in einem verschmutzten Arbeitsverzeichnis, ohne Änderungen zuerst zu stagen oder zu stashen

常见问题

Was ist der Unterschied zwischen Rebase und Merge?
Rebase schreibt die Commit-Historie um, um Ihre Commits auf einen anderen Branch anzuwenden und eine lineare Historie zu erstellen. Merge kombiniert Branches, ohne die Historie zu ändern. Verwenden Sie Rebase zur lokalen Bereinigung vor dem Pushen, verwenden Sie Merge zum Integrieren abgeschlossener Arbeit in gemeinsame Branches.
Wann sollte ich Cherry-Pick anstelle von Merge verwenden?
Verwenden Sie Cherry-Pick, wenn Sie nur spezifische Commits von einem anderen Branch benötigen, nicht die gesamte Branch-Historie. Dies ist nützlich, um Hotfixes auf mehrere Release-Branches anzuwenden, ohne alle Änderungen zu mergen.
Wie funktioniert git bisect?
Git bisect verwendet binäre Suche, um den Commit zu finden, der einen Fehler eingeführt hat. Sie markieren einen bekannten schlechten Commit und einen guten Commit, dann checkt Git Commits dazwischen aus. Sie testen jeden und markieren gut oder schlecht, bis der erste schlechte Commit gefunden wird.
Was ist ein Git-Worktree und wann sollte ich ihn verwenden?
Ein Worktree ermöglicht es Ihnen, mehrere Branches gleichzeitig in verschiedenen Verzeichnissen auszuchecken. Verwenden Sie ihn, wenn Sie an mehreren Features oder Fixes gleichzeitig arbeiten müssen, ohne Ihre aktuelle Arbeit zu stashen.
Wie lange behält Reflog gelöschte Commit-Historie?
Reflog behält die Historie standardmäßig für 90 Tage oder bis das Ref garbage collected wird. Dies bietet ein Sicherheitsnetz, um verlorene Commits oder Branches innerhalb dieses Zeitraums wiederherzustellen.
Ist es sicher, Git-Historie umzuschreiben?
Das Umschreiben der Historie ist sicher für lokale Branches, die nicht geteilt wurden. Für gemeinsame Branches nur umschreiben, wenn absolut notwendig, und immer 'git push --force-with-lease' verwenden, um zu vermeiden, die Arbeit anderer zu überschreiben.

开发者详情

文件结构

📄 SKILL.md