diff --git a/command.py b/command.py index 96d7848f..43988520 100644 --- a/command.py +++ b/command.py @@ -136,7 +136,7 @@ class Command(object): groups = mp.config.GetString('manifest.groups') if not groups: - groups = 'all,-notdefault,platform-' + platform.system().lower() + groups = 'default,platform-' + platform.system().lower() groups = [x for x in re.split(r'[,\s]+', groups) if x] if not args: diff --git a/project.py b/project.py index 22e4a5d6..901a2831 100644 --- a/project.py +++ b/project.py @@ -672,9 +672,14 @@ class Project(object): project_groups: "all,group1,group2" manifest_groups: "-group1,group2" the project will be matched. + + The special manifest group "default" will match any project that + does not have the special project group "notdefault" """ - expanded_manifest_groups = manifest_groups or ['all', '-notdefault'] + expanded_manifest_groups = manifest_groups or ['default'] expanded_project_groups = ['all'] + (self.groups or []) + if not 'notdefault' in expanded_project_groups: + expanded_project_groups += ['default'] matched = False for group in expanded_manifest_groups: diff --git a/repo b/repo index 6b374f72..c3484745 100755 --- a/repo +++ b/repo @@ -164,7 +164,8 @@ group.add_option('--depth', type='int', default=None, help='create a shallow clone with given depth; see git clone') group.add_option('-g', '--groups', dest='groups', default='default', - help='restrict manifest projects to ones with a specified group', + help='restrict manifest projects to ones with specified ' + 'group(s) [default|all|G1,G2,G3|G4,-G5,-G6]', metavar='GROUP') group.add_option('-p', '--platform', dest='platform', default="auto", diff --git a/subcmds/init.py b/subcmds/init.py index 11312601..29730cc4 100644 --- a/subcmds/init.py +++ b/subcmds/init.py @@ -91,8 +91,9 @@ to update the working directory files. dest='depth', help='create a shallow clone with given depth; see git clone') g.add_option('-g', '--groups', - dest='groups', default='all,-notdefault', - help='restrict manifest projects to ones with a specified group', + dest='groups', default='default', + help='restrict manifest projects to ones with specified ' + 'group(s) [default|all|G1,G2,G3|G4,-G5,-G6]', metavar='GROUP') g.add_option('-p', '--platform', dest='platform', default='auto', @@ -169,7 +170,7 @@ to update the working directory files. groups = [x for x in groups if x] groupstr = ','.join(groups) - if opt.platform == 'auto' and groupstr == 'all,-notdefault,platform-' + platform.system().lower(): + if opt.platform == 'auto' and groupstr == 'default,platform-' + platform.system().lower(): groupstr = None m.config.SetString('manifest.groups', groupstr)