[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] help setting up private git for bugfixes / own patches
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] help setting up private git for bugfixes / own patches |
Date: |
Thu, 19 Apr 2012 12:41:36 +0100 |
On Thu, Apr 19, 2012 at 12:32 PM, Peter Lieven <address@hidden> wrote:
> On 19.04.2012 13:15, Stefan Hajnoczi wrote:
>>
>> On Thu, Apr 19, 2012 at 11:05 AM, Peter Lieven<address@hidden> wrote:
>>>
>>> On 19.04.2012 12:01, Stefan Hajnoczi wrote:
>>>>
>>>> On Thu, Apr 19, 2012 at 10:06 AM, Peter Lieven<address@hidden> wrote:
>>>>>
>>>>> I want to setup a private git repository for qemu for to tasks:
>>>>>
>>>>> a)
>>>>> cherry-pick existing patches from qemu git and submitting them as
>>>>> patch
>>>>> set
>>>>> for the next stable qemu release. i'm talking about patches which have
>>>>> not
>>>>> been included yet, but are present in the repository.
>>>>>
>>>>> b)
>>>>> add own patches for submitting them as patch sets for review and
>>>>> possible
>>>>> inclusion into next releases.
>>>>>
>>>>> Is there any good best current practice / how to how to do this?
>>>>
>>>> I'm not sure if you mean a "personal repository" when you say
>>>> "private". A lot of developers have personal repos on github.com or
>>>> repo.or.cz. It's fairly easy to get started with either of these free
>>>> services. You'll be able to do what you described and share the state
>>>> of your repo with others.
>>>
>>> Yes I meant personal repository. What I was looking for is a guideline
>>> to the commands / steps to do the above taaks.
>>
>> In general the steps are:
>>
>> 1. Create an account with the service.
>> 2. See if there is an upstream repo or mirror for qemu.git. If yes,
>> click the "fork" button to set up your personal clone. Otherwise
>> click the "new repository" button to create an empty repo.
>> 3. Go to settings and set up ssh keys so you will have git access.
>> 4. Clone your repo so you have a local copy you can work on.
>
> Thats all quite clear to me. I meant the commands to cherry pick patches
> and prepare a patchset out of them.
Okay. Maybe this is closer to what you are looking for...
You get commits into your local repo in one of two ways:
1. Fetch them from a remote repo (e.g. linaro or someone's personal repo):
git remote add linaro git://path.to/linaro/qemu.git
git fetch linaro
git log linaro/cool-new-unmerged-feature
...find the commit SHA1 you want...
git cherry-pick 1234abcd
New versions of git let you specify multiple commit IDs and probably
also 1234..5678 notation to grab whole series of commits in one go.
2. Apply patch emails:
mutt (or Thunderbird or whatever)
git am patch.mbox (some clients can pipe mails to git-am(1))
Once you are happy with your local branch, push it to your public repo.
Stefan