make_option('-i', '--ignore',
help = 'ignore the applied patches in the series',
action = 'store_true'),
+ make_option('--replace',
+ help = 'replace the unapplied patches in the series',
+ action = 'store_true'),
make_option('-b', '--base',
help = 'use BASE instead of HEAD for file importing'),
make_option('-e', '--edit',
return stripped
+def __replace_slashes_with_dashes(name):
+ stripped = name.replace('/', '-')
+
+ return stripped
+
def __parse_description(descr):
"""Parse the patch description and return the new description and
author information (if any).
message, author_name, author_email, author_date = \
__parse_patch(filename)
+ if not patch:
+ patch = make_patch_name(message)
+ if not patch:
+ raise CmdException, 'Unknown patch name'
+
# refresh_patch() will invoke the editor in this case, with correct
# patch content
if not message:
if options.commemail:
committer_email = options.commemail
+ if options.replace and patch in crt_series.get_unapplied():
+ crt_series.delete_patch(patch)
+
crt_series.new_patch(patch, message = message, can_edit = False,
author_name = author_name,
author_email = author_email,
if options.strip:
patch = __strip_patch_name(patch)
+ patch = __replace_slashes_with_dashes(patch);
if options.ignore and patch in applied:
print 'Ignoring already applied patch "%s"' % patch
continue
elif filename:
patch = os.path.basename(filename)
else:
- raise CmdException, 'Unknown patch name'
+ patch = ''
if options.strip:
patch = __strip_patch_name(patch)