BUG: 2.11-era rebase regression when @{upstream} is implicitly used
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Feb 14, 2019, 13:23 UTC
- Message-ID
- <877ee2jyh3.fsf@evledraar.gmail.com>
This is not a 2.21 release issue, and pre-dates the built-in rebase.
When you clone any repository, e.g. git.git, and add one commit on top of the cloned branch, then run "git rebase" you'll get e.g.:
$ git rebase
First, rewinding head to replay your work on top of it...
Applying: fooBefore 4f21454b55 ("merge-base: handle --fork-point without reflog", 2016-10-12) you'd get:
$ git rebase
Current branch master is up to date.The results are not the same for "git rebase @{u}" or "git rebase $(git rev-parse @{u})":
$ git rev-parse HEAD; ~/g/git/git --exec-path=/home/avar/g/git rebase; git rev-parse HEAD; ~/g/git/git --exec-path=/home/avar/g/git rebase @{u}; git rev-parse HEAD; ~/g/git/git --exec-path=/home/avar/g/git rebase $(git rev-parse @{u}); git rev-parse HEAD
d0a1e49341cac6db3226eb0f76ec4a5912f18af8
First, rewinding head to replay your work on top of it...
Applying: foo
3a9261d6e34d9f6d00c8e8411d7ddd8cffa02d97
Current branch master is up to date.
3a9261d6e34d9f6d00c8e8411d7ddd8cffa02d97
Current branch master is up to date.
3a9261d6e34d9f6d00c8e8411d7ddd8cffa02d97With 4f21454b55^ checked-out the SHA-1 always stays the same, i.e. no work is done for the same command:
69bd93d9aa438c6d903b8e62c3bf1c6c5ab8ec0b
Current branch master is up to date.
69bd93d9aa438c6d903b8e62c3bf1c6c5ab8ec0b
Current branch master is up to date.
69bd93d9aa438c6d903b8e62c3bf1c6c5ab8ec0b
Current branch master is up to date.
69bd93d9aa438c6d903b8e62c3bf1c6c5ab8ec0b