Source Control & Git
Sciorex provides a fully integrated Git experience — from interactive commit graphs to worktree-based isolation — so you never need to leave the editor to manage your repository.
Git Graph
Visualize your entire commit history as an interactive, scrollable graph.
| Feature | Description |
|---|---|
| Commit nodes | Click any commit to inspect its diff, message, author, and timestamp |
| Branch lines | Color-coded lanes for each branch with merge paths clearly drawn |
| Search | Filter commits by message, author, SHA, or date range |
| Keyboard nav | Arrow keys to move between commits, Enter to expand details |
TIP
Double-click a commit node to open a full diff view in a split panel, making it easy to review historical changes without disrupting your current workspace.
Branch Management
Create, switch, and compare branches directly from the sidebar or command palette.
- Create — branch from any commit, tag, or HEAD with a single action
- Switch — instant checkout with uncommitted-change warnings
- Compare — side-by-side diff between any two branches, with file-level and line-level granularity
- Rename / Delete — safe operations with upstream tracking updates
- Upstream tracking — set or change the remote tracking branch for push/pull
WARNING
Switching branches with uncommitted changes will prompt you to stash or commit first. Sciorex will never silently discard your work.
Staging
Fine-grained control over what goes into each commit.
| Capability | Detail |
|---|---|
| File-level staging | Stage or unstage entire files from the changes list |
| Hunk-level partial staging | Expand a file diff and stage individual hunks independently |
| Interactive change selection | Line-by-line selection within a hunk for maximum precision |
| Diff preview | Inline diff displayed beside each staged/unstaged file |
| Discard changes | Revert individual files, hunks, or selected lines to HEAD |
INFO
Partial staging is especially useful when a single file contains both a bug fix and a new feature — commit them separately for a cleaner history.
Stash
Save work-in-progress without committing, and restore it later.
- Save — stash all changes or only staged changes, with an optional descriptive message
- List — browse stashes in a searchable list showing message, date, and branch of origin
- Apply — apply a stash while keeping it in the list, or pop to apply and remove
- Drop — delete individual stashes or clear the entire stash stack
- Stash to branch — create a new branch from a stash entry for continued work
Worktree Management
Worktrees let you work on multiple branches simultaneously without cloning the repository again.
| Action | Description |
|---|---|
| Create | Spin up an isolated worktree for any branch in one click |
| Merge | Merge a child worktree back into its parent with strategy selection |
| Accept | Accept and finalize incoming worktree changes |
| Cleanup | Remove stale worktrees and their associated directories |
TIP
Each worktree operates in its own directory with its own working tree and index, so you can run a dev server on main while fixing a bug on hotfix/issue-42 without stopping either process.
Worktree Diff
Compare the state of a parent worktree against any child worktree.
- File tree highlighting shows which files differ between the two worktrees
- Inline diff view with syntax highlighting for a detailed comparison
- Quick actions to cherry-pick individual changes from child to parent or vice versa
Merge Strategies
Three merge strategies are available when combining branches or worktrees, each with automatic conflict detection.
| Strategy | Behavior |
|---|---|
| Merge | Standard merge commit preserving full branch topology |
| Squash | Condense all branch commits into a single commit on the target |
| Rebase | Replay branch commits on top of the target for a linear history |
WARNING
Conflict detection runs before the merge begins. If conflicts are found, Sciorex opens a 3-way merge editor so you can resolve each conflict inline before completing the operation.
Commit Interface
A purpose-built interface for authoring commits.
- Message editor — multi-line with subject/body separation, character count, and conventional-commit suggestions
- Git initialization — initialize a new repository from any folder with
.gitignoretemplate selection - Remote management — add, rename, or remove remotes; fetch, pull, and push with progress indicators
- Amend — modify the last commit message or contents without creating a new commit
- Sign commits — GPG and SSH signing support configured through Settings
AI Integration
Every worktree can host its own independent AI session.
- Separate chat history, context window, and tool permissions per worktree
- AI agents see only the files in their worktree, preventing cross-branch context leakage
- Merge AI-generated changes back through the standard worktree merge flow
- Council Mode sessions can be scoped to a specific worktree for focused multi-model review
INFO
Independent AI sessions mean you can have one agent refactoring code on a feature branch while another agent writes tests on the main branch — simultaneously and without interference.
Related
- Parallel Chats — run multiple AI conversations side by side
- Worktrees Concept — deeper dive into the worktree architecture
- Flow Editor — automate Git workflows with visual node graphs
