Can not rebase to first commit

7 messages, 6 authors, 2021-01-26 · open the first message on its own page

Can not rebase to first commit

From: Eugen Konkov <hidden>
Date: 2021-01-25 10:49:51

I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'


git --version
git version 2.30.0

--
Best regards,
Eugen Konkov 

Re: Can not rebase to first commit

From: Matheus Tavares Bernardino <hidden>
Date: 2021-01-25 16:55:39

Hi, Eugen

On Mon, Jan 25, 2021 at 7:50 AM Eugen Konkov [off-list ref] wrote:
I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'
'1e99034^' means "the first parent of 1e99034". However, this is the
root commit of your branch, so it has no parent. That's why rebase
complained about  '1e99034^' being invalid. To rebase this commit you
can instead use the --root option.

Thanks,
Matheus

Re: Can not rebase to first commit

From: Eugen Konkov <hidden>
Date: 2021-01-26 22:19:54

Thank you for all.

I always thought that 1e99034^ means: including this commit

Thanks for help

Re: Can not rebase to first commit

From: Taylor Blau <hidden>
Date: 2021-01-26 02:52:11

On Mon, Jan 25, 2021 at 12:38:16PM +0200, Eugen Konkov wrote:
I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
(Unrelated to your question, but I assume that 'git tree' is an alias of
'git log --oneline --graph' by the looks of it).
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'
Yes, this is because you're asking to rebase your branch onto the parent
of 1e99034, which doesn't exist because 1e99034 is the "root" commit and
therefore has no parents.

'git rebase' has a special option for exactly this case, which is
'--root'. By replacing '1e99034^' with '--root', you should be able to
do what you want.

Thanks,
Taylor

Re: Can not rebase to first commit

From: Thomas Braun <hidden>
Date: 2021-01-26 20:53:30

On 1/25/2021 11:38 AM, Eugen Konkov wrote:
I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'
See `git rebase --root` where the documentation says "This allows you to
rebase the root commit(s) on a branch.".

Re: Can not rebase to first commit

From: Martin Ågren <hidden>
Date: 2021-01-26 20:54:08

On Mon, 25 Jan 2021 at 11:53, Eugen Konkov [off-list ref] wrote:
I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'
The commit 1e99034 has no parent, so 1e99034^ errors out.

Try the `--root` option. That should do what you want.

Martin

Re: Can not rebase to first commit

From: Kevin Daudt <hidden>
Date: 2021-01-26 20:54:39

On Mon, Jan 25, 2021 at 12:38:16PM +0200, Eugen Konkov wrote:
I can not rebase to first commit.

This is how to reproduce:

kes@work ~/work/projects/general/Auth $ git tree
* 67857d5 (HEAD -> dev) asdf
* 1e99034 (local/dev) Initial commit
kes@work ~/work/projects/general/Auth $ git rebase -i --autostash --rebase-merges 1e99034^
fatal: invalid upstream '1e99034^'


git --version
git version 2.30.0

--
Best regards,
Eugen Konkov 
This is because the first commit (1e99034) does not have a parent, so
1e99034^ cannot be resolved.

git rebase does however have an option for this: git rebase -i --root.
That allows you to rebase the root commit.

Hope this helps, Kevin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help