Kevin Daudt <me@xxxxxxxxx> writes: > rebase learned to stash changes when it encounters a dirty work tree, but > git pull --rebase does not. > > Only verify if the working tree is dirty when rebase.autostash is not > enabled. > > Signed-off-by: Kevin Daudt <me@xxxxxxxxx> > Helped-by: Paul Tan <pyokagan@xxxxxxxxx> > --- I applied it, tried to run today's integration cycle, and then ended up ejecting it from my tree for now, as this seemed to break 5520 when merged to 'pu' X-<. Well, that is partly expected, as Paul's builtin/pull.c does not know about it (yet). > git-pull.sh | 3 ++- > t/t5520-pull.sh | 11 +++++++++++ > 2 files changed, 13 insertions(+), 1 deletion(-) > > diff --git a/git-pull.sh b/git-pull.sh > index a814bf6..ff28d3f 100755 > --- a/git-pull.sh > +++ b/git-pull.sh > @@ -284,7 +284,8 @@ test true = "$rebase" && { > then > die "$(gettext "updating an unborn branch with changes added to the index")" > fi > - else > + elif test $(git config --bool --get rebase.autostash || echo false) = false > + then > require_clean_work_tree "pull with rebase" "Please commit or stash them." > fi > oldremoteref= && > diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh > index f4a7193..a0013ee 100755 > --- a/t/t5520-pull.sh > +++ b/t/t5520-pull.sh > @@ -245,6 +245,17 @@ test_expect_success '--rebase fails with multiple branches' ' > test modified = "$(git show HEAD:file)" > ' > > +test_expect_success 'pull --rebase succeeds with dirty working directory and rebase.autostash set' ' > + test_config rebase.autostash true && > + git reset --hard before-rebase && > + echo dirty >new_file && > + git add new_file && > + git pull --rebase . copy && > + test_cmp_rev HEAD^ copy && > + test "$(cat new_file)" = dirty && > + test "$(cat file)" = "modified again" > +' > + > test_expect_success 'pull.rebase' ' > git reset --hard before-rebase && > test_config pull.rebase true && -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html