first commit
Some checks failed
Test examples / Test Examples (20) (push) Has been cancelled
Test examples / Test Examples (22) (push) Has been cancelled
Lock Threads / action (push) Has been cancelled
Trigger Release / start (push) Has been cancelled
Stale issue handler / stale (push) Has been cancelled
Update Font Data / create-pull-request (push) Has been cancelled
build-and-deploy / deploy-target (push) Has been cancelled
build-and-deploy / build (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / build-wasm (nodejs) (push) Has been cancelled
build-and-deploy / build-wasm (web) (push) Has been cancelled
build-and-deploy / Deploy preview tarball (push) Has been cancelled
build-and-deploy / Potentially publish release (push) Has been cancelled
build-and-deploy / publish-turbopack-npm-packages (push) Has been cancelled
build-and-deploy / Deploy examples (push) Has been cancelled
build-and-deploy / thank you, build (push) Has been cancelled
build-and-deploy / Upload Turbopack Bytesize metrics to Datadog (push) Has been cancelled
Rspack Next.js development integration tests / Rspack integration tests (push) Has been cancelled
Rspack Next.js production integration tests / Rspack integration tests (push) Has been cancelled
Turbopack Next.js development integration tests / Next.js integration tests (push) Has been cancelled
Turbopack Next.js production integration tests / Next.js integration tests (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack development test manifest (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack production test manifest (push) Has been cancelled
Upload bundler test manifests to areweturboyet.com / Upload test results (push) Has been cancelled
Update React / create-pull-request (push) Has been cancelled
test-e2e-project-reset-cron / reset-test-project (push) Has been cancelled
Notify about the top 15 issues/PRs/feature requests (most reacted) in the last 90 days / run (push) Has been cancelled

This commit is contained in:
Arian Tron
2026-03-10 19:37:31 +03:30
commit 61f56f997c
27684 changed files with 2784175 additions and 0 deletions

View File

@@ -0,0 +1,102 @@
# Git Workflow with Graphite
## Overview
Use Graphite (`gt`) instead of git for ALL branch and commit operations in this repository.
## Use `gt` Instead of `git`
All git commands work with `gt`. Always use `gt` instead of `git`:
```bash
gt add <files> # instead of git add
gt commit # instead of git commit
gt status # instead of git status
gt diff # instead of git diff
# etc.
```
For branch/push operations, use the Graphite-specific commands:
- `gt create <branch-name> -m "message"` instead of `git branch` + `git commit`
- `gt submit --no-edit` instead of `git push`
## Graphite Commands
| Command | Description |
| -------------------------------------- | ------------------------------------------- |
| `gt add <files>` | Stage files for commit |
| `gt create <branch-name> -m "message"` | Create a new branch with commit |
| `gt modify -a --no-edit` | Stage all and amend current branch's commit |
| `gt checkout <branch>` | Switch branches |
| `gt sync` | Sync and restack all branches |
| `gt submit --no-edit` | Push and create/update PRs |
| `gt log short` | View stack status |
## Creating a New Branch with Changes
**CRITICAL**: Always stage changes BEFORE running `gt create`. The command format is:
```bash
gt add <files> # Stage changes FIRST
gt create <branch-name> -m "commit message" # Then create branch with commit
```
If you run `gt create` without staged changes, it creates an empty branch with no commit. Then `gt modify -a --no-edit` will fail because there's no commit to amend.
**If you accidentally created an empty branch:**
```bash
gt add <files>
gt commit -m "commit message" # Create initial commit
gt submit --no-edit # Then submit
```
## Creating PRs with Descriptions
All PRs require a description. Use this workflow:
```bash
gt submit --no-edit
gh pr edit <pr-number> --body "Place description here"
```
## Safety Rules
- Graphite force-pushes everything - old commits only recoverable via reflog
- Never have uncommitted changes when switching branches - they get lost during restack
- Never use `gt stash` with Graphite - causes conflicts when `gt modify` restacks
- Never use `gt checkout HEAD -- <file>` after editing - silently restores unfixed version
- `gt modify --no-edit` with unstaged/untracked files stages ALL changes
- `gt sync` pulls FROM remote, doesn't push TO remote
- `gt modify` restacks children locally but doesn't push them
- Always verify with `gt status -sb` after stack operations
## Safe Multi-Branch Fix Workflow
```bash
gt checkout parent-branch
# make edits
gt modify -a --no-edit # Stage all, amend, restack children
gt show HEAD -- <files> # VERIFY fix is in commit
gt submit --no-edit # Push immediately
gt checkout child-branch # Already restacked from gt modify
# make edits
gt modify -a --no-edit
gt show HEAD -- <files> # VERIFY
gt submit --no-edit
```
## Checklist for Creating a PR
1. [ ] Stage changes: `gt add <files>`
2. [ ] Create branch with commit: `gt create <branch-name> -m "message"`
3. [ ] Push and create PR: `gt submit --no-edit`
4. [ ] Add PR description using `.github/pull_request_template.md` format: `gh pr edit <pr-number> --body "..."`
## General Safety Checklist
- [ ] Always use `gt` instead of `git`
- [ ] No uncommitted changes before switching branches
- [ ] Verify with `gt status -sb` after stack operations

3
.cursor/worktrees.json Normal file
View File

@@ -0,0 +1,3 @@
{
"setup-worktree": ["pnpm install", "pnpm build"]
}