Docs Advanced Git Collaboration

Git Collaboration

Stable v0.1.0
Schema.md v2
Updated APR 2026

Goal

One workspace. Many editors. Zero merge pain. Git-native. No server. No locks.


How Collaboration Works (User View)

Everyone edits markdown freely. Any editor. Any time.
No central database. No live sync. No file locking.
Changes merge through the journal. Git tracks the result.
onde lint = sync point. onde git commit = safe checkpoint.


The Git Workflow

onde does not replace Git. It wraps it safely.

What onde touchesWhat onde ignores
.onde/ journal + cacheYour scripts, configs, assets
Changed .md filesUnrelated markdown (notes, drafts)
Auto-generated commit messagesYour custom git hooks, branches, remotes

Rule: onde only stages what it manages. Your repo stays yours.


onde git commit (What It Does)

One command. Safe. Predictable.

onde git commit

What happens:

  1. Reads uncommitted journal changes.
  2. Generates a scannable commit message.
  3. Stages .onde/ + only changed markdown files.
  4. Commits. Done.

No journal changes? Command skips silently. No empty commits.
Unrelated files edited? Not staged. Not touched.

Message examples:

onde: set task-882 status DOING→BLOCKED
onde: add task-895, fix Active Tasks[3]→5
onde: 23 changes (5 add, 12 set, 3 edge-add, 2 fix, 1 auto-id)

Concurrent Edits (Two People, Same File)

No conflict markers. No manual resolution.

Scenario: Alice edits status. Bob edits priority. Both save.

  1. Alice runs onde lint → journal records status change.
  2. Bob runs onde lint → journal records priority change.
  3. Journal merges both automatically. Deterministic.
  4. Markdown updates to reflect merged state.
  5. Git sees clean line appends. Zero conflicts.

Rule: Edit freely. Lint to sync. Commit to lock.


Pull & Sync Flow

Remote changes landed? Sync before you work.

git pull
onde lint          # merges remote journal ops, updates your markdown
# continue editing

What lint does after pull:

  • Reads new journal entries from remote.
  • Merges them with your local state.
  • Updates markdown files to match merged truth.
  • Reports what changed. Clean exit.

Rule: Always onde lint after git pull. Never skip.


Recovery & Safety Nets

Mistakes happen. Recovery is one command.

ScenarioFix
Accidentally deleted tasks/ folderonde materialize rebuilds from journal
Markdown looks broken after mergeonde lint heals it from journal
Want to see what changed remotelyonde diff HEAD~3 HEAD (graph-level diff)
Need to revert workspace to yesterdayonde restore --at 2026-04-06 --reason "rollback"
Journal cache feels staleonde materialize --check verifies, onde materialize rebuilds

Rule: Journal = truth. Markdown = view. Delete view anytime. Rebuild safe.


Daily Team Checklist

Start of day:
  git pull
  onde lint

During work:
  Edit markdown freely
  onde lint (sync + validate)
  onde git commit (checkpoint)

End of day:
  onde lint
  onde git commit
  git push

Weekly hygiene:
  onde tree --over-budget
  onde organize --dirs --rename
  onde relink --to id
  git commit -m "Weekly workspace sync"

Common Traps & Fixes

TrapSymptomFix
Commit without lintGit shows messy markdown diffRun onde lint first. Then commit.
Pull without lintFiles look stale or mismatchedgit pullonde lint. Always.
Manual git commit on .onde/Message unclear, stages wrong filesUse onde git commit. Let it scope correctly.
Two editors change same propertyLast writer winsExpected. Deterministic. Check onde history <id> if needed.
Push breaks teammate’s lintRemote ops not merged locallyTeammate runs git pullonde lint. Heals instantly.

Deep Dives

Next Step:Agent Integration (Optional but Powerful)