Wed 06 Sep 2006 01:37:22 PM UTC, original submission:
"tla update" will delete directories (and files) if they have been added, but not yet committed. Even worse, apparently a directory will be deleted if it contains even one un-added file. A work-around is to use "tla star-merge" or "tla replay."
Colin Fox gives this recipe:
1. Create a directory in an already arch-controlled tree
2. tla add the dir
3. Put a file in to the dir, without an arch-tag.
4. Do a "tla update", updating your tree from someone else's changes
5. tla actually DELETES the directory, rather than just moving it off to a safe place.
---
Matthieu Moy explains it as:
update does roughly
undo
replay (or apply-delta)
redo
You'd probably get the same behavior with
$ tla undo && tla redo
undo means compute the changeset, and apply it in reverse to the local tree. The changeset will say "this directory has been added". So, the reversed changeset will say "this directory has to be deleted". In this case, I believe tla does "rm -fr" on the directory.
---
See the short discussion at http://www.nabble.com/TLA-Replay-nastiness-t522947.html
That discussion notes "That's a known issue (Aaron reported this a while ago), but it seems that none of baz and tla fixed it." But, I did not find a bug listed.
|