elif os.path.isfile(fname):
os.remove(fname)
-
+
class Patch(StgitObject):
"""Basic patch implementation
"""
assert not before_existing or (top and bottom)
assert not (commit and before_existing)
assert (top and bottom) or (not top and not bottom)
- assert not top or (bottom == git.get_commit(top).get_parent())
+ assert commit or (not top or (bottom == git.get_commit(top).get_parent()))
if name != None:
self.__patch_name_valid(name)
patch = self.get_patch(name)
if git.get_head_file() == self.get_name():
- if keep and not git.apply_diff(git.get_head(), patch.get_bottom()):
+ if keep and not git.apply_diff(git.get_head(), patch.get_bottom(),
+ check_index = False):
raise StackException(
'Failed to pop patches while preserving the local changes')
git.switch(patch.get_bottom(), keep)