[#1192] Refactor tree model in repositories

The problem is that trees were previously stored with their contents as a dict
keyed by each item (subtree or blob)'s object_id. This doesn't allow for the
case where a tree contains two identical objects with different names, as when
one creates a tag in SVN, for example. The refactoring stores a list of
subobjects in the Tree object instead, with object_id and name as attributes.
The other changes are consequences of this refactoring.

Rick Copeland Rick Copeland 2010-11-18

changed Allura/allura/model/repository.py
changed ForgeGit/forgegit/model/git_repo.py
changed ForgeHg/forgehg/model/hg.py
changed ForgeSVN/forgesvn/model/svn.py
changed ForgeSVN/forgesvn/tests/model/test_repository.py
Allura/allura/model/repository.py Diff Switch to side-by-side view
Loading...
ForgeGit/forgegit/model/git_repo.py Diff Switch to side-by-side view
Loading...
ForgeHg/forgehg/model/hg.py Diff Switch to side-by-side view
Loading...
ForgeSVN/forgesvn/model/svn.py Diff Switch to side-by-side view
Loading...
ForgeSVN/forgesvn/tests/model/test_repository.py Diff Switch to side-by-side view
Loading...