Boost logo

Boost :

Subject: Re: [boost] [git] Why are we using Github (was: The any library does not pull cleanly because of a forced update on develop and master)
From: Vladimir Prus (ghost_at_[hidden])
Date: 2013-12-18 04:26:52


On 18.12.2013 13:21, Mateusz Loskot wrote:
> On 18 December 2013 07:55, Vladimir Prus <ghost_at_[hidden]> wrote:
>> On 12.12.2013 02:19, Cox, Michael wrote:
>>>
>>> Which brings me to a question I've been wanting to get answered: why was
>>> Github chosen in the first place? I know it's the 900-lb gorilla in
>>> public
>>> git repository hosts, but I think Bitbucket allows so much more
>>> flexibility
>>> in configuring your repositories:
>>>
>>> - Individual branches and wild-card refs can be configured with who is
>>> allowed to commit (which can be a group).
>>
>>
>> Another problem with github model is that it promotes this
>> fork-and-pull-request
>> model, which then creates a history where every second commit is 'merged
>> pull request N', which is not very useful.
>
> IMHO, we've talked about it on IRC the other day, it may be useful
> as it helps to find out where things come from.
> A 'plain' contributed commit does not always carry useful information
> i.e. bug number it fixes.
> So, the merge commit is a chance to amend that.

I assume we're gonna follow proper commit message guidelines, line here:

        http://git-scm.com/book/ch5-2.html

so the bug being fixed is part of the commit message. (If not, the commit
is rejected).

> Plus, it indicates important detail: *who* let the contribution into
> the codebase.

You don't need pull requests for that, see:

        https://github.com/boostorg/build/commit/5ce453de47ba732f5a88236f302370d7bbafce18

Git has separate information about committer and author, and github displays that.

>> On the other hand, many other projects are using gerrit,
>> where contributors clone locally, made changes and then push to a special
>> magic ref on a server, which creates online review. Contributors of course can
>> share their changes by pushing them to other repositories, but in the end, you end
>> up with a clean logical patches to the official repository.
>
> I have been a tiny contributor/lurker to Qt/Qt Creator, and from a
> contributor POV,
> their Gerrit system is a huge obstacle for ad-hoc or occasional contributors.
> Setting up is not easy, learning curve about the whole development
> workflow is quite steep,
> and the information is very distributed (no (auto)links between gerrit
> and their bug reports).
> For me, it is difficult to simply observe what is happening in the
> Qt/Qt Creator projects.

I don't recall my pain setting up Gerrit for Eclipse. But they do have some
kind of cross-linking.

- Volodya


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk