10 | | Using these tools, it'll be possible to set up a sub-project that contains a read-only copy of the subversion repository that can integrate gracefully with the parent project. There are still some holes to fill in but that's more or less the plan. I (cotto) will make sure all the pieces exist and can be made to fit together before seriously proposing anything. |
| 10 | Using these tools, here's the plan (as it exists): |
| 11 | * Keep Subversion as the version control backend on the current Trac project (the parent). |
| 12 | * Add a subproject (the child) which uses Git as the vc backend. |
| 13 | * Make the following changes to the the navigation items ("Wiki", "Timeline", etc at the top of each page): |
| 14 | * Change "Browse Source" to "Browse svn" and add a "Browse git" item to the parent. |
| 15 | * Make "Browse git" point at the child project's source code browser. |
| 16 | * Add "Browse svn" to the child project, point it at the parent project's code browser. |
| 17 | * Make all navigation items in the child project point at the parent. |
| 18 | |
| 19 | This will allow Git and Subversion to integrate gracefully with Trac and will preserve links to Subversion revision numbers. There are still some holes to fill in but that's more or less the plan. I (cotto) will make sure all the pieces exist and can be made to fit together before seriously proposing anything. |
13 | | * redirection for old svn urls |
14 | | * make urls look better ( parrot/svn-browser/... instead of parrot/p/parrot-svn/browser) |
15 | | * make r1234 redirect to the svn project |
16 | | * ro access to the svn repo (marginally useful, mitigated by keeping a mirror on github, which allows svn access to git repositories) |
| 22 | * nice urls |
| 23 | * make code browser urls look better ( parrot/svn-browser/... instead of parrot/p/parrot-git/browser) |
| 24 | * make git changeset urls look good (parrot/git-changeset/102fe62b8 instead of parrot/p/parrot-git/changeset/...) |
| 25 | * the IRequestHandler and IRequestFilter interfaces may be helpful here ([http://trac.edgewall.org/browser/trunk/trac/web/api.py link]) |
| 26 | * have the child project generate nice-looking links |
| 27 | * A small custom plugin may be required if none exists. |
| 28 | * It might be a good idea to add a notification to the svn code browser that informs users that active development no longer happens there. |
| 29 | * read-only access to the svn repo (marginally useful, mitigated by keeping a mirror on github, which allows svn access to git repositories) |