Collaborate on Remote Files Without Overwriting Teammates
Learn how Naucturne combines live team presence with hash-based optimistic locking to block stale uploads before they overwrite a newer remote file.
Traditional FTP and SFTP clients assume that the operator knows whether anyone else changed the file. Two people can download the same configuration, edit independently and upload in sequence. The second upload succeeds technically and silently removes the first person’s work.
This is not solved by encryption or a shared password vault. Teams need awareness before a collision and a content check before a stale write.
The overwrite race
| Moment | Classic direct-edit workflow | Naucturne synced workflow |
|---|---|---|
| 09:00 | Alice and Bob download the same file | Each local copy receives a shared remote-content baseline |
| 09:05 | Alice uploads her completed change | The remote file changes and no longer matches Bob’s baseline |
| 09:10 | Bob uploads and silently replaces Alice’s work | Bob’s upload is blocked as a conflict |
| Resolution | The team discovers the loss later | Bob keeps his local copy and reconciles deliberately |
Layer one: live presence
For shared team credentials, Naucturne joins a realtime presence channel per team. Each authorised client publishes which shared site connections are open and which remote files are currently being edited.
The interface can therefore show teammate avatars around sites and files. This is a social warning: if someone is already editing wp-config.php, another person can coordinate before starting.
Presence is deliberately best-effort and cosmetic. A temporary network interruption must not be interpreted as proof that nobody is editing. It improves awareness but is not a lock or security boundary.
Layer two: a content baseline
Naucturne’s sync engine keeps a manifest for the workspace. After a successful transfer, the local and remote file share a SHA-256 baseline hash. The manifest is written atomically so an interrupted metadata update does not invalidate the entire workspace.
When a local change is ready to upload, the engine first checks the current remote state. If size and modification data still match the baseline, the upload can proceed. If metadata changed, Naucturne compares content when possible. Only a real content divergence becomes a conflict.
This detail avoids two bad outcomes:
- blindly uploading when the server state cannot be trusted;
- reporting a conflict merely because a server changed timestamp precision.
Once a conflict is marked, further automatic upload attempts for that file remain blocked until resolution.
What the user sees
Conflicts are surfaced in the sync workspace and grouped into notifications rather than producing a flood of one toast per file. The local version is not uploaded and remains available.
The current built-in resolution path discards the local synced copy and downloads the server version as a fresh baseline. If the local work matters, save or compare it before choosing that resolution.
Watched files opened through the remote editor use a related safeguard: when the remote baseline changed, the upload is cancelled and the local edit is preserved in a timestamped .conflict-* copy. Naucturne still leaves the semantic comparison and merge to the user.
Protection is not automatic merging
Naucturne prevents the stale sync upload. It does not understand the semantics of PHP, JSON, environment files or database migrations well enough to merge every conflict safely. Preserve the local version and reconcile intentionally.
Transfer conflicts are a separate case
Dragging a batch of files onto paths that already exist produces a transfer conflict list. Naucturne lets the operator choose replace or skip for each item before the batch continues.
That protects against accidental batch replacement, but it is not the same as optimistic sync locking. “The destination exists” answers a file-transfer question. “The remote content changed since I downloaded it” answers a collaboration question.
New-file creation can also use exclusive writes so the operation fails if the path already exists. Again, this protects creation, not concurrent semantic editing.
A safer remote collaboration workflow
Start from a shared site
Use the team inventory so presence can associate sessions and edited paths with the same credential record.
Check who is active
Look for teammate presence before opening a sensitive remote file, then coordinate high-risk production work.
Work from a synced local copy
Let Naucturne establish the local/remote content baseline rather than editing from an unknown stale download.
Treat a conflict as a stop signal
Preserve local work, retrieve the current server version and compare before retrying.
Record durable code in Git
Commit meaningful application changes so review, history and rollback do not depend on a desktop sync manifest.
What Naucturne does not claim
Naucturne is not Google Docs for server files. It does not provide character-level co-editing, distributed CRDT merges or universal remote filesystem locks. Presence can become stale during a network outage. Hash checks add network and processing work. Direct changes made outside the synced workflow still require reconciliation.
The feature is intended to make a dangerous workflow fail visibly instead of succeeding destructively.
When this matters most
Conflict protection is useful for:
- agencies where several developers maintain the same customer sites;
- shared hosting without a deployment pipeline;
- emergency edits to configuration or content files;
- teams gradually moving legacy workflows toward Git and CI/CD;
- operational files that are not stored in the main application repository.
For fully automated, versioned deployments, let the pipeline own production writes and limit manual access. Naucturne can still provide controlled investigation and emergency access without becoming the deployment authority.
Connect collaboration to access control
Presence and conflict detection assume that the right people received the right sites. The guide to sharing SFTP access securely covers encrypted distribution, feature permissions and offboarding.
For individual file-transfer capabilities, see dual-pane transfers. For the complete team model, see teams and real time.
The desired outcome is not that conflicts never happen. It is that a conflict becomes visible before one teammate’s successful upload erases another teammate’s successful work.
Häufig gestellte Fragen
Does Naucturne lock remote files while someone edits them?
Naucturne shows live editing presence and uses optimistic conflict detection rather than a permanent server lock. Before a synced upload, it checks whether the remote content still matches the downloaded baseline.
What happens when the remote file changed?
The upload is blocked and the local version remains intact. The conflict stays visible until the user deliberately resolves it, normally by preserving work as needed and downloading the current server version.
Does Naucturne merge two versions automatically?
No. It prevents a stale automatic upload, but it does not promise a semantic three-way merge. Users should compare and reconcile meaningful code changes with version-control or diff tools.
Is presence the same as overwrite protection?
No. Presence is awareness: it shows who is connected and which remote files teammates are editing. Hash-based conflict detection is the safety mechanism that blocks a stale sync upload.
Should teams still use Git?
Yes. Git remains the right source of truth for versioned code and reviewed changes. Naucturne’s protection is valuable for operational files and hosting workflows where direct remote editing still occurs.