[Kde-scm-interest] Re: Request regarding Git branches

Torgny Nyblom kde at nyblom.org
Tue Dec 21 08:12:19 CET 2010


On Mon, 20 Dec 2010 19:48:44 +0100
Mark Kretschmann <kretschmann at kde.org> wrote:

> On Mon, Dec 20, 2010 at 6:22 PM, Torgny Nyblom <kde at nyblom.org> wrote:
> > On Mon, 20 Dec 2010 13:21:17 +0100
> > Mark Kretschmann <kretschmann at kde.org> wrote:
> >
> >> On Sun, Dec 19, 2010 at 9:52 PM, Ian Monroe <ian at monroe.nu> wrote:
> >> > On Sun, Dec 19, 2010 at 11:55, Mark Kretschmann <kretschmann at kde.org> wrote:
> >> >> On Sun, Dec 19, 2010 at 6:48 PM, Torgny Nyblom <kde at nyblom.org> wrote:
> >> >>> On Sun, 19 Dec 2010 18:39:52 +0100
> >> >>> Mark Kretschmann <kretschmann at kde.org> wrote:
> >> >>>
> >> >>>> Hey folks,
> >> >>>>
> >> >>>> I have a small request regarding git.kde.org, it resulted from a
> >> >>>> discussion with Chani:
> >> >>>>
> >> >>>> Problem is, we cannot currently force-push on branches, nor can we
> >> >>>> delete them. I can understand that this is done for safety reasons,
> >> >>>> but it does not fit everyone's work flow. E.g. I tend to rebase a lot,
> >> >>>> and that does not work without force pushing.
> >> >>>>
> >> >>>> So, Chani and I came up with this idea: We could allow force-pushing
> >> >>>> and deleting on branches (shares branches need communication anyway),
> >> >>>> but we could disallow it for master. This way, not much harm can be
> >> >>>> done, but it allows for a more flexible work flow.
> >> >>>>
> >> >>>>
> >> >>>> Thoughts?
> >> >>>
> >> >>> It would have to be a per branch setting as for instance KDE 4.7 will probably be in a lot of git branches and quite some harm can be done with force push/branch deletion there.
> >> >>
> >> >> My view is this: If you share a branch with others, you *need* to
> >> >> communicate anyway. I you just rebase it, of course that will do harm.
> >> >>
> >> >> So you don't rebase on branches that you want for cooperation, simple
> >> >> as that. I think that a "per branch" setting would cause a lot of
> >> >> work...
> >> >
> >> > Rebasing a 4.7 branch over master would be a horrible thing to have
> >> > happen. So it really can't be allowed for version branches.
> >>
> >> That I can agree with. However, version branches are not of direct
> >> importance to every developer. Ideally, some Git Ninja should watch
> >> over them, and maybe do the merges, or revert things.
> >>
> >> Personally I work on feature branches, and without force-pushing, the
> >> branches are entirely useless to me. You could argue that I should
> >> simply use a public clone and do there whatever I want. But then, what
> >> are the branches good for? De facto, they are currently being used for
> >> doing features, and not only release management.
> >
> > Yes and all of this would be covered with "per branch" settings.
> > How this is implemented is another thing, it could be "branches that match regexp" and rules foo and other rules bar.
> 
> You have a point there. How about this:
> 
> Per default, force-pushing is allowed in branches. But some important
> branches (like version branches) become protected.
> 
> Is that a workable compromise?

Works for me.

/Torgny


More information about the Kde-scm-interest mailing list