git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Linux Kernel based project in git
@ 2010-02-02  9:05 git
  2010-02-02 19:53 ` Avery Pennarun
  0 siblings, 1 reply; 4+ messages in thread
From: git @ 2010-02-02  9:05 UTC (permalink / raw)
  To: git

Hi,

I'm rather new to this mailing list so I hope this is the right place for
my question :-)

We recently moved one of our projects over from SVN to git.
This project is basically a Linux BSP for an ARM9 based processor using
Kernel 2.6.22.

For release we always generate 3 patches:
- BSP patch
- USB patch (since USB part is an external patch comming from a 3rd party)
- WiFi patch (same as for USB)

So my question is:
What's the best way for handling this inside the git repository?

IMHO it would make sense to have 3 branches (BSP, USB, WiFi) each based on
unmodified 2.6.22 Kernel. USB and WiFi branch is used for generating the
patch and for applying possible fixes. BSP branch for actual BSP related
feature development and fixes.
The changes in these branches are merged into the master branch which is
used for compiling/testing the whole BSP.

Is this a useful approach or are there other, better ways for generating
the three patches and compiling testing the whole thing?

Thanks!
Christian.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux Kernel based project in git
  2010-02-02  9:05 Linux Kernel based project in git git
@ 2010-02-02 19:53 ` Avery Pennarun
  2010-02-03  8:32   ` Christian Eisendle
  0 siblings, 1 reply; 4+ messages in thread
From: Avery Pennarun @ 2010-02-02 19:53 UTC (permalink / raw)
  To: git; +Cc: git

On Tue, Feb 2, 2010 at 4:05 AM,  <git@eisendle.net> wrote:
> For release we always generate 3 patches:
> - BSP patch
> - USB patch (since USB part is an external patch comming from a 3rd party)
> - WiFi patch (same as for USB)
>
> So my question is:
> What's the best way for handling this inside the git repository?
>
> IMHO it would make sense to have 3 branches (BSP, USB, WiFi) each based on
> unmodified 2.6.22 Kernel. USB and WiFi branch is used for generating the
> patch and for applying possible fixes. BSP branch for actual BSP related
> feature development and fixes.
> The changes in these branches are merged into the master branch which is
> used for compiling/testing the whole BSP.

Are you planning to submit these patches upstream at any point?  If
not, it might be easiest to just jam them all together in one branch
and not look back.  Since it seems like they probably affect quite
different parts of the code, you could always extract a clean set of
patches *later* and submit those patches upstream.

But that's just my lazy advice :)  The disadvantage to maintaining
them in separate branches is that probably none of the three branches
will work on its own anyway, since you don't have a physical device
that only has the new USB device, or only the new WiFi device, or only
needs the BSP but doesn't have updated USB or WiFi.  Putting them in
separate branches is therefore a bit artificial and won't buy you
much.

Have fun,

Avery

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux Kernel based project in git
  2010-02-02 19:53 ` Avery Pennarun
@ 2010-02-03  8:32   ` Christian Eisendle
  2010-02-06 11:43     ` Stephen Kelly
  0 siblings, 1 reply; 4+ messages in thread
From: Christian Eisendle @ 2010-02-03  8:32 UTC (permalink / raw)
  To: Avery Pennarun; +Cc: git


>> For release we always generate 3 patches:
>> - BSP patch
>> - USB patch (since USB part is an external patch comming from a 3rd
>> party)
>> - WiFi patch (same as for USB)
>>
>> So my question is:
>> What's the best way for handling this inside the git repository?
>>
>> IMHO it would make sense to have 3 branches (BSP, USB, WiFi) each based
>> on
>> unmodified 2.6.22 Kernel. USB and WiFi branch is used for generating the
>> patch and for applying possible fixes. BSP branch for actual BSP related
>> feature development and fixes.
>> The changes in these branches are merged into the master branch which is
>> used for compiling/testing the whole BSP.
>
> Are you planning to submit these patches upstream at any point?  If
> not, it might be easiest to just jam them all together in one branch
> and not look back.  Since it seems like they probably affect quite
> different parts of the code, you could always extract a clean set of
> patches *later* and submit those patches upstream.

For BSP I plan to upstream eventually.

The basic idea was to divide the project in three different patches since
USB and WiFi comes from a third party and is not released under GPL (well,
different story...)
Keeping them in three different branches would make patch creation easier
especially if fixes are checked in into the USB/WiFi branch.

>
> But that's just my lazy advice :)  The disadvantage to maintaining
> them in separate branches is that probably none of the three branches
> will work on its own anyway, since you don't have a physical device
> that only has the new USB device, or only the new WiFi device, or only
> needs the BSP but doesn't have updated USB or WiFi.  Putting them in
> separate branches is therefore a bit artificial and won't buy you
> much.

At least the BSP could work on its own but for WiFi and USB you are right -
it's hard to test them seperately.
I just thought that there is a convenient way for handling such kind of
project.

Thanks,
Christian.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux Kernel based project in git
  2010-02-03  8:32   ` Christian Eisendle
@ 2010-02-06 11:43     ` Stephen Kelly
  0 siblings, 0 replies; 4+ messages in thread
From: Stephen Kelly @ 2010-02-06 11:43 UTC (permalink / raw)
  To: git

Christian Eisendle wrote:
>>> IMHO it would make sense to have 3 branches (BSP, USB, WiFi) each based
>>> on
>>> unmodified 2.6.22 Kernel. USB and WiFi branch is used for generating the
>>> patch and for applying possible fixes. BSP branch for actual BSP related
>>> feature development and fixes.
>>> The changes in these branches are merged into the master branch which is
>>> used for compiling/testing the whole BSP.
>>
>> Are you planning to submit these patches upstream at any point?  If
>> not, it might be easiest to just jam them all together in one branch
>> and not look back.  Since it seems like they probably affect quite
>> different parts of the code, you could always extract a clean set of
>> patches *later* and submit those patches upstream.
> 
> For BSP I plan to upstream eventually.
> 
> The basic idea was to divide the project in three different patches since
> USB and WiFi comes from a third party and is not released under GPL (well,
> different story...)

Do you distribute this kernel?

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-02-06 11:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-02  9:05 Linux Kernel based project in git git
2010-02-02 19:53 ` Avery Pennarun
2010-02-03  8:32   ` Christian Eisendle
2010-02-06 11:43     ` Stephen Kelly

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).