Stores a list of git projects and a list of manifests
Add a new manifest to this worktree
Run a sync using just the xml file given as parameter
Delegates to WorkTreeSyncer
Build a list of git projects using the xml configuration
Get a git project by its sources
Get the git projects matching a given group
Look for a project configured with the given repo
Return a :py:class`.Snapshot` of the current worktree state
Add a new git project
Add a new project. :returns: a boolean telling if the clone succeeded
Move a project in the worktree (same remote url, different src)
Called by qisrc checkout
For each project, checkout the branch if it is different than the default branch of the manifest.
Return a dict (src, project) for every project as configured on the given branch of the manifest.
Remove a project from the worktree
Save the project instance in .qi/git.xml
Save the worktree config in .qi/git.xml