git-step-rebase: enable the rerere-mechanism.

Git provides a mechanism to record conflict solutions done with
one rebase and replaying that when rebasing another branch. That's
what's Rerere is about. Unfortunately, a rebase still stops after
resolving all conflicts with recordings, so convenience is a bit
limited.

If Rerere is disabled in a repo or there are no recorded solutions,
this option has no effect.
This commit is contained in:
Markus Hitter 2017-06-04 17:09:35 +02:00
parent 606611a070
commit d3867f112c
1 changed files with 2 additions and 2 deletions

View File

@ -55,12 +55,12 @@ wait_count 5
while [ ${PARENTS} -ge 0 ]; do while [ ${PARENTS} -ge 0 ]; do
echo -e "Next: rebasing to \033[1m${BASE_BRANCH}~${PARENTS}\033[0m" echo -e "Next: rebasing to \033[1m${BASE_BRANCH}~${PARENTS}\033[0m"
sleep 1 sleep 1
if ! git rebase --whitespace=fix ${BASE_BRANCH}~${PARENTS}; then if ! git rebase --rerere-autoupdate --whitespace=fix ${BASE_BRANCH}~${PARENTS}; then
echo echo
echo "Standard rebase failed." echo "Standard rebase failed."
echo "Trying again, this time ignoring whitespace ..." echo "Trying again, this time ignoring whitespace ..."
git rebase --abort git rebase --abort
if ! git rebase -X ignore-all-space --whitespace=fix ${BASE_BRANCH}~${PARENTS}; then if ! git rebase --rerere-autoupdate -X ignore-all-space --whitespace=fix ${BASE_BRANCH}~${PARENTS}; then
exit exit
fi fi
fi fi