sl-submit-diff
Installation
SKILL.md
Submit Diff (Sapling + Phabricator)
Submit commits to Phabricator for code review using jf submit (Meta).
<EXTREMELY_IMPORTANT>
Windows Note: Use the full path to
sl.exeto avoid conflicts with PowerShell's built-inslalias forSet-Location. </EXTREMELY_IMPORTANT>
What This Skill Does
- If there are uncommitted changes, first run
/committo create a commit - Submit commits to Phabricator using
jf submit --draft. Submit for review using DRAFT mode - Each commit in the stack becomes a separate Phabricator diff (D12345)
- Commit messages are updated with
Differential Revision:link
Commands to Use
sl status- Check for uncommitted changesjf submit --draft- Submit commits to Phabricator in DRAFT modesl diff --since-last-submit- View changes since last submission
Common Operations
| Task | Command |
|---|---|
| Submit current commit | jf submit --draft |
| Update diff after amend | sl amend && jf submit --draft |
Diff Status Values
Needs Review- Awaiting reviewer feedbackAccepted- Ready to landNeeds Revision- Reviewer requested changesCommitted- Diff has been landedAbandoned- Diff was closed without landing
Stacked Diffs
Sapling naturally supports stacked commits. When submitting:
- Each commit gets its own Phabricator diff (D12345, D12346, D12347)
- Diffs are linked with proper dependency relationships
- Reviewers can review each diff independently
Important Notes
- Unlike GitHub PRs, Phabricator diffs are tied to commits via
Differential Revision: - Use
sl diff --since-last-submitto see what changed since last submission - The ISL (Interactive Smartlog) web UI also supports submitting diffs