git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Bug: Since Git 2.13.2 git rebase autostash doesn't use fast-forward (poor performance)

From
Nneuling@dakosy.de <neuling@dakosy.de>
Date
Jun 27, 2017, 14:34 UTC
Message-ID
<OF6AC13578.F02B79FA-ONC125814C.004DD247-C125814C.00500A93@dakosy.de>
Hi, 

since the latest version 2.13.2 "git pull --rebase --autostash" doesn't use a fast forward if possible.

My global git config contains "pull.rebase=preserve" and "rebase.autostash=true". My working directory is clean with no changes.

When I use "git pull" git doesn't use a possible fast forward merge. If I remove "rebase.autostash" from my git config a fast forward merge will take place.

If a fast forward merge is possible and the working directory is clean autostash should do nothing and the fast forward merge should happen.

Is it also possible to implement autostash on fast forward merge that way to stash changes, do the fast forward merge and at least to apply the stashed changes?

Another problem is if "git pull rebase" without autostash can do a fast forward merge the rebase validation for changed files in my working directory will be done.

I think in that case the fast forward merge validation should run. That would prevent the need to stash local changes if they do not affect files of the commits to fast forward from origin branch.

Regards, Mattias

Next: Junio C Hamano
Message 1 of 3 in “Bug: Since Git 2.13.2 git rebase autostash doesn't use fast-forward (poor performance)”
  1. neuling@dakosy.deJun 27, 2017
  2. Junio C HamanoJun 27, 2017
  3. neuling@dakosy.deJun 28, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.