Part of bzrlib
The basic plan is that every branch knows the history of everything that has merged into it. As the first step of a merge, pull, or branch operation we copy history from the source into the destination branch.
The copying is done in a slightly complicated order. We don't want to add a revision to the store until everything it refers to is also stored, so that if a revision is present we can totally recreate it. However, we can't know what files are included in a revision until we read its inventory. So we query the inventory store of the source for the ids we need, and then pull those ids and then return to the inventories.
| Line # | Kind | Name | Docs |
|---|---|---|---|
| 63 | Class | RepoFetcher | Pull revisions and texts from one repository to another. |
| 252 | Class | GenericRepoFetcher | This is a generic repo to repo fetcher. |
| 287 | Class | KnitRepoFetcher | This is a knit format repository specific fetcher. |
| 318 | Class | Inter1and2Helper | Helper for operations that convert data from model 1 and 2 |
| 418 | Class | Model1toKnit2Fetcher | Fetch from a Model1 repository into a Knit2 repository |
| 437 | Class | Knit1to2Fetcher | Fetch from a Knit1 repository into a Knit2 repository |
| 457 | Class | RemoteToOtherFetcher | Undocumented |