emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [DEV] New git workflow


From: Bastien
Subject: Re: [O] [DEV] New git workflow
Date: Tue, 20 Mar 2012 11:40:40 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux)

Hi Achim,

Achim Gratz <address@hidden> writes:

> Bastien <address@hidden> writes:
>> The main problem I see With this workflow is that releases are made
>> from two different branches: bugfix releases are made from maint and
>> major releases are made from master.  This doesn't look right to me.
>
> That ain't necessarily so.  IMHO, the release always has to be done from
> maint (that's the whole purpose of it), preceded by a merge from master
> if and only if a major release is done.

Agreed.  What I want on top of this is a to have a branch where *every*
commit corresponds to a single release.

>> - master: the main persistent branch.  This is were regular development
>>   goes.  This branch is merged back to the maint branch when we release
>>   a new major version.  No release happens directly from this branch.
>>
>> - maint: the "production" persistent branch.  This branch is dedicated
>>   to the release process: when hot fixes are hot enough, we merge the
>>   hotfix branch to the maint branch and release a bugfix release.  When
>>   the master branch (where hot fixes are also merged to) is mature and
>>   well tested, we merge master into maint and release a major version.
>
> So far no deviation from today.

There is one important deviation: so far we could commit changes to
maint and _not_ make a release.  From now on, every commit to maint
should correspond to a release.

> All things considered, the hotfix branch and maint
> should almost always point to the same commit.  In other words, all
> hotfix branches should merge into maint first and then maint back into
> master.  

No.  All hotfix branches should merge into master regularily.  When
hotfix contains enough fixes for a bugfix release, then we merge it to
maint, and process with release.

My main goal is this: have a branch with one commit = one release.

>>  Here are the advantages I see:
>>
>> 1) *all releases happen on the same branch* (the maint branch): it is
>>    easier to keep this branch in sync with Emacs and we can also add
>>    git hooks to automate the release process.
>
> See above, that was always how it was supposed to work.

Yes.  

-- 
 Bastien



reply via email to

[Prev in Thread] Current Thread [Next in Thread]