monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Continue: Win32 working copy update


From: Wouter van Kleunen
Subject: [Monotone-devel] Continue: Win32 working copy update
Date: Wed, 14 Dec 2005 23:33:27 +0100 (CET)
User-agent: SquirrelMail/1.4.4

Continuing the discussion on win32 working copy update (couldn't easily do
a In-Reply-To)

Offcourse the problem will be much dramatic if monotone could rollback an
update on an error. What operations does monotone do on the working copy:

- Create a file:
   Action: create it
   Commit: do nothing
   Rollback: delete it

- Delete a file:
   Action: Move it to MT/transaction/file
   Commit: Delete MT/transaction/file
   Rollback: Move it back

- Update a file:
   Action: Copy it to MT/transaction/file (or inverse patch) and update file
   Commit: Delete MT/transaction/file
   Rollback: patch or copy file back

- Rename/move a file:
   Action: Move the file
   Commit: Do nothing
   Rollback: Move it back

- Create a directory:
   Action: create it
   Commit: do nothing
   Rollback: delete it

- Delete a directory:
   Action: Move it to MT/transaction/directory
   Commit: Delete MT/transaction/directory
   Rollback: Move it back

- Rename/move a directory:
   Action: Move the directory
   Commit: Do nothing
   Rollback: Move it back

Keeping some log in MT with all the actions will allow you to rollback
anytime. If monotone sees the log it will warn you:

You're working copy is in a inconsistent state, please rollback before
changing anything to your working copy!

After an update (commit) you can say:

You working copy is now in a consistent state.

If COMMIT has already been written to the log file and you find a old log
file, you can just clean it up.








reply via email to

[Prev in Thread] Current Thread [Next in Thread]