# stgit, rebasing with 100 patches

3 messages from 2009-10-01 to 2009-11-02. Participants: Jon Smirl, Karl Wiberg.
Thread: https://gitlist.dev/t/21110

## Jon Smirl, 2009-10-01 23:04

Subject: stgit, rebasing with 100 patches
Message-ID: <9e4733910910011604w68cdca86l2baa2f2fe4db4a32@mail.gmail.com>
URL: https://gitlist.dev/e/9e4733910910011604w68cdca86l2baa2f2fe4db4a32%40mail.gmail.com

```
I have 100 patches loaded into in stgit. My tree is at 2.6.30. Now I
want to rebase to 2.6.31-rc1. About 30 of these hundred patches got
committed in this interval.

If I rebase directly to 2.6.31-rc1 I end up with a bunch of merge
conflicts as the patches are applied. That's because patches 'a,b,c'
got applied in the merge window. When I push 'a' back down it sees the
combination of 'a,b,c' not just 'a'. It is unable to figure out that
'a' was applied and then 'b' and 'c' applied on top of it.

Is there a better way to locate the patches the got applied?

-- 
Jon Smirl
jonsmirl@gmail.com

```

## Jon Smirl, 2009-10-04 13:00

Subject: Re: stgit, rebasing with 100 patches
Message-ID: <9e4733910910040600g2cbd1deah6e7ae3ad9a4aa54e@mail.gmail.com>
URL: https://gitlist.dev/e/9e4733910910040600g2cbd1deah6e7ae3ad9a4aa54e%40mail.gmail.com
In-Reply-To: <9e4733910910011604w68cdca86l2baa2f2fe4db4a32@mail.gmail.com>

```
On Thu, Oct 1, 2009 at 7:04 PM, Jon Smirl <jonsmirl@gmail.com> wrote:
> I have 100 patches loaded into in stgit. My tree is at 2.6.30. Now I
> want to rebase to 2.6.31-rc1. About 30 of these hundred patches got
> committed in this interval.
>
> If I rebase directly to 2.6.31-rc1 I end up with a bunch of merge
> conflicts as the patches are applied. That's because patches 'a,b,c'
> got applied in the merge window. When I push 'a' back down it sees the
> combination of 'a,b,c' not just 'a'. It is unable to figure out that
> 'a' was applied and then 'b' and 'c' applied on top of it.
>
> Is there a better way to locate the patches the got applied?

A solution to this is to make an option on rebase that walks the patch
stack forward one commit at a time.

What does the --merged option do on stg rebase? The doc is rather sparse.


-- 
Jon Smirl
jonsmirl@gmail.com

```

## Karl Wiberg, 2009-11-02 08:22

Subject: Re: stgit, rebasing with 100 patches
Message-ID: <b8197bcb0911020022k5fefa7f5ia0901af8df0a3604@mail.gmail.com>
URL: https://gitlist.dev/e/b8197bcb0911020022k5fefa7f5ia0901af8df0a3604%40mail.gmail.com
In-Reply-To: <9e4733910910040600g2cbd1deah6e7ae3ad9a4aa54e@mail.gmail.com>

```
On Sun, Oct 4, 2009 at 2:00 PM, Jon Smirl <jonsmirl@gmail.com> wrote:

> On Thu, Oct 1, 2009 at 7:04 PM, Jon Smirl <jonsmirl@gmail.com> wrote:
>
> > Is there a better way to locate the patches the got applied?
>
> A solution to this is to make an option on rebase that walks the
> patch stack forward one commit at a time.
>
> What does the --merged option do on stg rebase? The doc is rather
> sparse.

Right, -m/--merged is what you want. Before applying any of the
patches, it tries to reverse-apply all of them in reverse
order---successful applications mean the patch was already in
upstream. It works surprisingly well.

-- 
Karl Wiberg, kha@treskal.com
   www.treskal.com/kalle

```
