[Bioperl-l] git branches, tags, 'topic/bug_####'
Chris Fields
cjfields at illinois.edu
Thu May 13 21:41:35 UTC 2010
On May 13, 2010, at 11:48 AM, Heikki Lehvaslaiho wrote:
> I second Hilmar. Let's try to keep this simple.
>
> While for most people just beginning to use git this discussion seems
> confusing and the structures complex, things really are pretty simple.
>
> I expect most of the branches to live only in developers copies of the repo.
> They are created when work starts on the new bug or a feature, merged to
> master when work is done, and removed immediately or soon after that. Most
> of the work is done in the master and only the release managers touch the
> stable and release branches. See Jay's flow diagram.
Right, many branches will occur locally. And I'm not suggesting that we strictly follow a particular pattern; I would rather not enforce that upon devs who already have a productive pattern set. I think this would act more as a suggested method of development, something that has been demonstrated to work well for other large projects (and something I'll be following).
What I would really like to promote is using branches for making code changes, even ones that are only a few commits or so (and even if they are only local ones not pushed to github). Branches are cheap.
> Work flow for this is (while calling 'git status' all the time):
>
> git branch $new
> git checkout $new
> # work
> git commit
> git commit
> ...
> git checkout master
> git merge $new
> git push
> ...
> git branch -d $new
>
> -Heikki
>
> Heikki Lehvaslaiho - skype:heikki_lehvaslaiho
> cell: +966 545 595 849 office: +966 2 808 2429
>
> Computational Bioscience Research Centre (CBRC), Building #2, Office #4216
> 4700 King Abdullah University of Science and Technology (KAUST)
> Thuwal 23955-6900, Kingdom of Saudi Arabia
Yes, that's essentially the basic workflow, maybe with a preliminary 'git pull' to sync to the latest.
chris
> On 13 May 2010 18:43, Hilmar Lapp <hlapp at drycafe.net> wrote:
>
>>
>> On May 13, 2010, at 9:49 AM, Chris Fields wrote:
>>
>> Re: deletion of branches, I'm only really in support of deleting feature
>>> branches that have been merged back to 'master' or another branch (e.g. only
>>> removed using 'git branch -d foo').
>>>
>>
>> I agree.
>>
>>
>> Older subversion release branches don't tend to fall into that category,
>>> in that we had merged or cherry-picked changes from svn trunk to them, not
>>> vice versa; they were never merged back to trunk. Deletion in this case
>>> would be somewhat history-revising, correct?
>>>
>>
>> I wouldn't call it history-revising. I also think it's OK to delete release
>> branches that are no longer supported, iff we have a tag for the release
>> itself.
>>
>> That's different from counting inactivity. A branch may lie dormant for a
>> year or longer until someone has time to pick it back up again - I don't see
>> the harm in keeping those around.
>>
>>
>> Saying that, we could adopt a workflow policy that allows deletion of any
>>> merged branch. All this suggests coming up with a good 'Contributing'
>>> document.
>>>
>>
>> That would be highly useful. I'll also voice a word of caution here though
>> - I find it kind of ironic that the switch to git, which is supposed to make
>> contribution *easier*, very often leads subsequently to complex
>> commit/pull/push/branching workflows being instituted for projects that take
>> pages and pages to document, a lot of time to ingest, and discipline to
>> follow - it seems to be very easy and tempting to go overboard with this.
>>
>> -hilmar
>>
>> --
>> ===========================================================
>> : Hilmar Lapp -:- Durham, NC -:- hlapp at drycafe dot net :
>> ===========================================================
>>
>>
>>
>>
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
More information about the Bioperl-l
mailing list