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

3 messages from 2008-01-07 to 2008-01-07. Participants: Jakub Narebski, David Kågedal.
Thread: https://gitlist.dev/t/11514

## Jakub Narebski, 2008-01-07 22:45

Subject: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"
Message-ID: <200801072345.21585.jnareb@gmail.com>
URL: https://gitlist.dev/e/200801072345.21585.jnareb%40gmail.com

```
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, 2008-01-07 23:11

Subject: Re: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"
Message-ID: <873at9z0w2.fsf@lysator.liu.se>
URL: https://gitlist.dev/e/873at9z0w2.fsf%40lysator.liu.se
In-Reply-To: <200801072345.21585.jnareb@gmail.com>

```
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
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

```

## David Kågedal, 2008-01-07 23:15

Subject: Re: StGIT loses Git commit using "stg repair"; I miss "stg assimilate"
Message-ID: <87y7b1xm66.fsf@lysator.liu.se>
URL: https://gitlist.dev/e/87y7b1xm66.fsf%40lysator.liu.se
In-Reply-To: <873at9z0w2.fsf@lysator.liu.se>

```
David Kågedal <davidk@lysator.liu.se> writes:

> 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* ..."

> 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

```
