devel: implement --retain-history option
With this option defined gbs tries to preserve the history of the
changes (since upstream) doing a convert. Basically, for each commit in
the old branch a corresponding commit in the new orphan packaging branch
is created. This works by dumping packaging files and updating patches
for each commit. However, empty commits are not generated - these are
caused e.g. by changes files that are ignored by patch-generation like
.gbs.conf.
NOTE! Only valid for the 'convert' action.
Change-Id: I669fa6732bea7940561f5c99820d6d97d14b0658
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>