David Sidrane <david.sidr...@nscdg.com>于2019年12月26日 周四03:18写道:

> Hi Duo,
>
> > What is the well known and documented WF of github? I've never heard
> about
> >it. Please be specific.
>
> https://guides.github.com/introduction/flow/
>
> All I add on top of the above is the naming to keep it easy for me to
> remember where the contributions was from and where it will go. (I have 8+
> remotes) and work on many branches at the same time all for nuttx.
>
> For this ASF project I would use:
>
> <parent name>-pr-<feature/bugfix/>
>
> master-pr-stm32h7_TX_DMA
> master-pr-imxrt_bugfixes
>
> > What do you mean by pr-branches?
>
> See above link and my naming suggestions.
>
> >I still do not get your point why you
> >stick to create branches in the offical repo? Why not just use your own
> >fork? If you need multiple continuous commits to finish a big feature, you
> >can open a branch, we call it a 'feature branch'.
>
> Can you push to my repo? No. Can I push to yours No.

Why I need to push to your repo? I just push to my own forked repo and then
I can create PR to your repo and you can decide whether to accept the PR.
I’ve never created something like pr-branches when contributing to open
source projects. And for NuttX, since I’m not a committer, I can not push
to the repo directly then I can not contribute to the project?

>
> Let me ask you the counter question: What are you concerns with working in
> the projects repo?

Because contributors can not create branches on the repo. They do not have
permission. And the project I’ve worked on do not use way either.

>
>
> Is it repo hygiene. There are simple rules (guidelines)
>
> 1) Use clear un ambiguous naming for branches and branch protection.
> 2) pr branches when merge get deteted.
> 3) Always ask the branch before delete not you own content.
> 4) Add a bot it will help
>
> >And this usually requires more powerful issue tracker system such as JIRA.
>
> Here is the question I would ask: Why re-invent the wheel or use disjoint
> tools (I have used Jira with github - To me, there was not value add that
> made it more it compelling, then issues and Project board in github[1]).

Maybe GitHub issue is fine, not sure. Anyway, this is not important. Let’s
stop.

>
>
> Github issues and PR work sooooo well together and are cross linked
> auto-magically.
>
> [1]
>
> https://help.github.com/en/github/managing-your-work-on-github/about-project-boards
>
>
>
> David
>
>
> -----Original Message-----
> From: 张铎(Duo Zhang) [mailto:palomino...@gmail.com]
> Sent: Wednesday, December 25, 2019 6:37 AM
> To: dev@nuttx.apache.org
> Subject: Re: Software release life cycle choices could have implications on
> workflow (was RE: Single Committer)
>
> David Sidrane <davi...@apache.org> 于2019年12月25日周三 下午9:55写道:
>
> > Hi Xiang,
> >
> > On 2019/12/25 05:36:14, Xiang Xiao <xiaoxiang781...@gmail.com> wrote:
> > > Yes, I agree that we shouldn't make the workflow too hard to scare
> > > people for contribution.
> > > NuttX isn't a new project, it's open source for more than ten years
> > > and has a mature workflow, the whole community is already familiar
> > > with it.
> > > Let me summary the current workflow:
> > > 1.User send patch against master to
> > > https://groups.google.com/forum/#!forum/nuttx or
> > > 2.User send PR against master to
> > https://bitbucket.org/nuttx/nuttx/src/master/
> > > 3.Greg review and merge the change to master(with some modification if
> > needed)
> > > 4.Greg make a official release and create a tag to mark the point
> > > every two(or three?) months
> > > To "be apache way", the required change is only item 3&4: all
> > > committer need involve the reviewing and release process.
> > > So, I suggest that we adapter the current workflow with as minimal
> > > changes as possible:
> >
> > The above workflow was in support of a BD model who preferred to use
> > patches and refused to use github. (no disrespect intended). The value it
> > added was incredible quality (but in reality only in the areas  important
> > to the BD). At the same time hindered community growth.  This has got to
> > stop under ASF "Community before code".
> > We all have pressure driving our needs to get changes into master. We can
> > do this and it does not have to be the old way or no way or even only one
> > way.  That is too controlling and it hinders Community.
> >
> > My old boss (Circa 1994's) was faced with fixing highly dysfunctional SW
> &
> > HW group dynamics. He asked us to think about, and ask yourself "How can
> I
> > add value to any situation?"  When thinking from this perspective it
> > removes Not Invented Here (NIH) and ego from the thinking. Some times the
> > answer is "I can not add value" let the others who can do it and trust
> > them.
> >
> > We have time to fine tune this. But we must keep it moving.
> >
> > The only thing I am suggestion
> > 1) Is to be able to put pr-branches, for the sake of PPMC collaboration
> in
> > the upstream repo..
> >
> What do you mean by pr-branches? I still do not get your point why you
> stick to create branches in the offical repo? Why not just use your own
> fork? If you need multiple continuous commits to finish a big feature, you
> can open a branch, we call it a 'feature branch'. And this usually requires
> more powerful issue tracker system such as JIRA.
>
> > 2)  Have the option to use github's well know and document WF
> >
> What is the well known and documented WF of github? I've never heard about
> it. Please be specific.
>
> > 3)  add branch protection to master
> >
> Agree if the branch protection here means disable force push.
>
> >
> > This will not EXCLUDE anyone from doing it the OLD way or as you suggest
> > below.
> >
> > > 1.User send patch against master to dev@nuttx.apache.org or
> > > 2.User send PR against master to
> > https://github.com/apache/incubator-nuttx
> > > 3.Committer review and merge the change to master(with some
> > > modification if needed)
> > > 4.Committer make a official release and create a tag to mark the point
> > > every two(or three?) months
> > > We only need to disscuss how committer review the change and make the
> > release.
> > > Since we have two month for the next release, let's focus on the
> > > review process in this time.
> > > Here are some questions I have, other may add more:
> > > a.How many committers need approve the patch before it can merge?
> > > b.How much time give the committer the chance to say no?
> > > Once all questions get the resonable answer, we can make a vote.
> > > If anyone has a new idea(e.g. submodule, dev/pr/release branch,
> > > backport, LTS) send your proprosal to dev list and let community
> > > discuss and vote.
> > > But before the proprosal is accepted by the community, why we stop to
> > > use the current workflow and make our work stuck?
> > >
> > > Thanks
> > > Xiang
> > >
> > > On Wed, Dec 25, 2019 at 10:48 AM Justin Mclean
> > > <jus...@classsoftware.com>
> > wrote:
> > > >
> > > > Hi,
> > > >
> > > > Some observations that might apply.
> > > >
> > > > I've used GitFlow on a few projects here at Apache and elsewhere, it
> > does have some downsides, it’s overly complex and confuses beginners
> > (particularly those unfamiliar with git),tends to create long lived
> > branches (which are hard to merge), master and develop (or whatever you
> > call the main two branches) tend to subtly get out of sync over time.
> > > >
> > > > You can change the GitHub default branch (you need to ask infra). A
> > bigger issue with having master / develop and if you don’t merge
> > frequently
> > is that people don’t think the committers are that active, external
> people
> > don't tend to look at activity on the branches.
> > > >
> > > > Note that Apache Git/GitHub has some restrictions, we don’t want
> > history to be rewritten for legal and provenance reasons so a couple of
> > things you may be used to doing outside of Apache may not be possible.
> > Squashing commits in some projects tends to be frowned on for this
> > reasons.
> > Similarly we need to know the author of any change.
> > > >
> > > > Thanks,
> > > > Justin
> > > >
> > > >
> > >
> >
> > David
> >
>

Reply via email to