Troubleshooting
Practical diagnostic guidance and step-by-step solutions for everyday multi-repository scenarios.
Troubleshooting Common Issues
1. "Configuration drift detected" or "Run rnex sync"
- Cause:
rnex.yamlor.local.rnex.yamlwas modified, but the workspace harness (.rnex/), AI instructions, or Git hook dispatchers have not been reconciled. - Solution: Run
rnex sync(orrnex sync -yto auto-confirm schema upgrades).
2. Search tools or AI assistants cannot find files inside configured repository directory (<repos_dir>/)
- Cause: Some indexers respect
.gitignoreby default and skip<repos_dir>/(defaultrepos/). - Solution: Repo Nexus automatically generates
.ignore,.cursorignore, and.geminiignorecontaining!<repos_dir>/*. Runrnex syncto restore these un-ignore files.
3. A repository failed to clone during rnex clone
- Cause: SSH key authentication error or network interruption.
- Solution: Verify access via standard Git (
git ls-remote <url>), then retryrnex repo clone <name>orrnex clone.
4. How do I temporarily disable a repository on my machine without affecting teammates?
- Solution: Run
rnex repo set <name> --disable --local. This writesenabled: falseinto.local.rnex.yamlwithout touching the sharedrnex.yaml.
5. Repository directory mismatch or unexpected clone location
- Cause: A custom
repos_dirsetting in.local.rnex.yamloverridesrnex.yaml, or a custom directory was provided duringrnex init --repos-dir <dir>. - Solution: Run
rnex statusto inspect active workspace configuration, and checkrepos_dir:in.local.rnex.yamlvsrnex.yaml.
Migrating from Git Submodules to Repo Nexus
If your existing project uses Git submodules, migrating to Repo Nexus eliminates detached HEAD issues and pointer desynchronization:
Step 1: De-register Existing Submodules
Inside your umbrella repository, de-register each submodule:
bash
git submodule deinit -f --all
rm -rf .git/modules/*
git rm -f --cached <path/to/submodule>
rm -rf <path/to/submodule>
rm -f .gitmodules
git commit -m "chore: remove git submodules"Step 2: Initialize Repo Nexus
bash
rnex init -yStep 3: Register Member Repositories
Add the repositories using their standard Git URLs:
bash
rnex repo add git@github.com:my-org/backend.git --name backend
rnex repo add git@github.com:my-org/frontend.git --name frontendStep 4: Clone All Repositories
bash
rnex cloneAll repositories are now cloned into your configured member repository directory (<repos_dir>/, default ./repos/) as independent Git repositories. No submodule pointers are tracked in the umbrella repository.
