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:
parent
606611a070
commit
d3867f112c
|
|
@ -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
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue