Offline Commits (WAS: It's time to fix Subversion Merge)
From: Bolstridge, Andrew <andy.bolstridge_at_intergraph.com>
Date: Tue, 12 Jul 2011 09:25:36 +0000
> -----Original Message-----
You can still have simplicity while adding offline commits.
With the new WC db, it's conceivable that a "--local" option could be added to svn commit that would not send the changeset to the server, but would store it in the WC, temporarily. When the user then performed a normal commit, the client could replay each local commit to the server in turn. The user gets the ability to commit when not connected to the network, can also commit code they might want to revert later, the overall subversion system doesn't get changed very much at all, and the server remains unchanged.
If there are updates pending, the operation performs as it does today, alerting the user to merge if necessary, but otherwise treating all the local commits as if they were just in-progress modifications.
Svn wouldn't get the full features of a DVCS like offline history, but then we don't want to store a local copy of the entire repository! (that said, it would be complicated, but possible, to download a cache of the last x revisions once the WC gets the ability to store local commits to provide local diffs - though I'm not sure that would be enough of an advantage to warrant the cost of implementing).
This is an archived mail posted to the Subversion Dev mailing list.