Our review
Shows changes between two commits or between a commit and the working tree, providing file-by-file diff information.
Strengths
- Provides line-by-line detail of additions and deletions
- Allows filtering by file or directory for targeted diffs
- Supports all commit references (hash, branch, tag, relative)
Limitations
- Does not handle diffs between remote branches without prior fetch
- Can be slow on very large repositories or wide commit ranges
- Does not show global statistics (total files changed)
Use this skill to quickly inspect changes in a recent commit, compare two branches, or examine the evolution of a specific file.
Do not use it for complex history analysis or if you need an interactive diff with hunks rejection or staging (prefer a dedicated tool like `git difftool`).
Security analysis
SafeThe skill only runs read-only git diff commands, with no destructive or exfiltrating actions. No risk of executing harmful commands from the skill itself, though user-supplied commit references could be unsafe if not sanitized.
No concerns found
Examples
Show diff from HEAD~1 to HEADShow diff from main to feature/authShow diff from HEAD~5 to HEAD for path /src/main.goname: git-diff description: Show changes between two commits or between a commit and the working tree. Returns file-by-file diff information including additions, deletions, and change hunks. allowed-tools: Bash metadata: category: git version: 1.0.0
Git Diff Skill
This skill shows changes between two commits or between a commit and the working tree, providing detailed diff information for each changed file.
Usage
The git-diff skill compares two points in the repository history and returns detailed information about what changed.
Parameters
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | from_commit | string | Yes | - | Starting commit reference (hash, branch, tag, HEAD~n) | | to_commit | string | No | HEAD | Ending commit reference | | path | string | No | - | Filter diff to specific file or directory |
Commit References
You can use various formats for commit references:
- Full commit hash:
abc123def456... - Short hash:
abc123 - Branch name:
main,feature/auth - Tag:
v1.0.0 - Relative:
HEAD~1,HEAD~3 - Range: Compare between any two references
Example Usage
Show changes in the last commit:
Show diff from HEAD~1 to HEAD
Show changes between branches:
Show diff from main to feature/auth
Show changes for a specific file:
Show diff from HEAD~5 to HEAD for path /src/main.go
Result Format
The diff result includes:
- List of changed files with:
- File path (and old path if renamed)
- Status (A=Added, M=Modified, D=Deleted, R=Renamed)
- Number of additions and deletions
- Change hunks with line numbers
- Total additions across all files
- Total deletions across all files
Status Codes
| Code | Meaning | |------|---------| | A | Added - New file | | M | Modified - Existing file changed | | D | Deleted - File removed | | R | Renamed - File moved/renamed | | C | Copied - File copied |
Best Practices
- Use relative references (HEAD~n) for recent changes
- Filter by path for large diffs
- Compare against main/master to see feature changes
- Check both additions and deletions for context
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.