Я просто повысил бы ValueError, если Вам не нужно более определенное исключение..
def import_to_orm(name, save=False, recurse=False):
if recurse and not save:
raise ValueError("save must be True if recurse is True")
нет действительно никакого смысла в выполнении class BadValueError(ValueError):pass
- Ваш пользовательский класс идентичен используемый к ValueError, итак, почему бы не использовать это?
Этот не изменяет исходное более новое ответвление и дает Вам возможность сделать дальнейшие модификации перед заключительной фиксацией.
git checkout new -b tmp
git merge -s ours old -m 'irrelevant'
git checkout old
git merge --squash tmp
git branch -D tmp
#do any other stuff you want
git add -A; git commit -m 'foo' #commit (or however you like)