threads / discuss / 11514

StGIT loses Git commit using "stg repair"; I miss "stg assimilate"

Subject: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"

## tl;dr

3 messages between Jan 7, 2008 and Jan 7, 2008.

replies: 2people: 2as markdown or json

Jakub Narebski· Jan 7, 2008, 22:45 UTC · lore

I have StGIT branch with no patches applied: all patches are on stack. I have accidentally added git commit on top of StGIT branch head. I tried to use "stg assimilate" to turn this commit into StGIT commit, applied, but new version of StGIT has only "stg repair". And the sequence

 # stg repair
 # stg rebase origin

made me lose this git commit (well, up to reflog of course). This should not happen! Why assimilate got removed?

4206:[gitweb/web@git]# stg --version Stacked GIT 0.14.1 git version 1.5.3.7 Python version 2.4.3 (#1, Jun 13 2006, 16:41:18) [GCC 4.0.2 20051125 (Red Hat 4.0.2-8)]

-- 
Jakub Narebski
Poland
David Kågedal· Jan 7, 2008, 23:11 UTC · re: Jakub Narebski · lore

Re: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"

Jakub Narebski <jnareb@gmail.com> writes:
Show 5 quoted lines
> I have StGIT branch with no patches applied: all patches are on stack.
> I have accidentally added git commit on top of StGIT branch head.
> I tried to use "stg assimilate" to turn this commit into StGIT commit, 
> applied, but new version of StGIT has only "stg repair". And the 
> sequence

If you have no patches, there is nothing to assimilate or repair. Your patch stack is considered to be on top of your new commit, so if you push a patch it will appear on top of the commit you just created.

To turn your new commit into a patch, use "stg uncommit".
Show 5 quoted lines
>  # stg repair
>  # stg rebase origin
>
> made me lose this git commit (well, up to reflog of course). This should 
> not happen! Why assimilate got removed?

repair does exactly what assimilate did in this case, so it would not have helped you.

-- 
David Kågedal
David Kågedal· Jan 7, 2008, 23:15 UTC · re: David Kågedal · lore

Re: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"

David Kågedal <davidk@lysator.liu.se> writes:
Show 9 quoted lines
> Jakub Narebski <jnareb@gmail.com> writes:
>
>> I have StGIT branch with no patches applied: all patches are on stack.
>> I have accidentally added git commit on top of StGIT branch head.
>> I tried to use "stg assimilate" to turn this commit into StGIT commit, 
>> applied, but new version of StGIT has only "stg repair". And the 
>> sequence
>
> If you have no patches, there is nothing to assimilate or repair. Your
That should have been "if you have no patches *applied* ..."
Show 13 quoted lines
> patch stack is considered to be on top of your new commit, so if you
> push a patch it will appear on top of the commit you just created.
>
> To turn your new commit into a patch, use "stg uncommit".
>
>>  # stg repair
>>  # stg rebase origin
>>
>> made me lose this git commit (well, up to reflog of course). This should 
>> not happen! Why assimilate got removed?
>
> repair does exactly what assimilate did in this case, so it would not
> have helped you.
-- 
David Kågedal

← back to recent threads