Filtered Views
Contents
Goals
- aim for general design useful for both:
- reduced tree (ala cvs) useful for translators, etc.
- focussed work (ala git index) useful for breaking large changes into smaller commits
- provide feedback each time view is being used
- don't introduce features/commands until absolutely necessary
- do lots of tests as we go
Plan
1. Store in a new file: .bzr/checkout/view say - explicitly doesn't propagate
2. If a view is being invoked, then first message displayed is:
- Ignoring files outside view: (details of view)
3. If specifying explicit files, error if they are not inside the view.
4. Add --view (-V) list option to checkout and branch
5. Suggested order to support views in other commands:
- status
- diff
- commit
- add
- remove
- revert
- merge
- update
- pull
6. Once all relevant existing commands support views, add view command for changing the view. This can be a second patch.
Issues
If the view file contains a list of paths, what happens when things are renamed? Can we trap this and either follow the rename or complain?
