* more revision control systems
-* support for tracking repo renames
- It should be possible to tell mr that there used to be a repo at
- src/foo/bar, and it's been moved to src/bar. mr would then detect if the
- move needs to be done, and handle it. This is mostly useful when mrconfig
- files are shared accross several systems.
+* a way to detect repos in a tree that are not registered, and warn
+ about or even auto-register them. (svn externals make this quite
+ difficult!)
- [src/bar]
- renamedfrom = src/foo/bar
+* When there are chained mrconfig files, mr could be smarter about
+ checkouts and updates. Ie, when a new version of an mrconfig file is
+ checked out or updated, throw all the info from the old one away, and
+ process the new one.
- (Support multple renames of a single repo?)
-
-* repo deletions
-
- Handling repo deletions might also be possible, but is tricky, since
- there's no good way to tell if a local checkout of a given repo is clean
- and really should be deleted. Probably better for mr to just warn that a
- repo still exists on disk that it is no longer managed.
-
- [src/foo/baz]
- deleted = true
-
-* mr register
-
- Idea is you check out a repo and then use mr register to add it to the
- closest mrconfig file.
-
- mr register would be implemented as a shell command that then calls
- mr config with flags that make it actually edit the mrconfig file:
-
- if [ -d "$MR_REPO/.svn" ]; then
- url=$(svn info "$MR_REPO" | grep -i ^URL: | cut -d ' ' -f 2)
- if [ -z "$url" ]; then
- error "cannot determine svn url"
- fi
- mr -c "$MR_CONFIG" config --add "$MR_REPO" --checkout="svn co $URL"
- fi
+ Until this is fixed, checkouts and updates need to be manually repeated
+ after mrconfig files have changes.