Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [incubation] Contributions via GitHub, how to handle squash commits

However, be careful with doing force pushes on GitHub, you can lose
some/all of the review history. That is the main reason I like doing
Squash and Merge.

See https://github.com/isaacs/github/issues/443

(However I much prefer Gerrit workflow, but that is for another day.)
~~~
Jonah Graham
Kichwa Coders Ltd.
www.kichwacoders.com


On 26 July 2017 at 11:01, Mickael Istria <mistria@xxxxxxxxxx> wrote:
> Hi,
>
> On Wed, Jul 26, 2017 at 11:51 AM, Jens von Pilgrim <developer@xxxxxxxxx>
> wrote:
>>
>> 1) What happens if a contributor has forgotten to sign-off? Is it possible
>> to "sign-off" the pull-request?
>
>
>  I believe you have to ask the committer to add the Sign-off, otherwise
> you're simply not allowed to merge the patch.
> Pull requests are not part of the commit record nor of the history, they're
> staying on GitHub and aren't portable if your code has to move one day, so I
> don't think putting a sign-off on the PR is useful nor enough.
>
>> 2) We use "Squash and Merge" commits in order to reduce the size of the
>> commit history and to simplify the identification of problematic commits
>> (since a commit then usually correlates with a task and a specific fix or
>> new feature). In that case, the initial "commit record" of the contributor
>> is gone, and the commit has to be performed by a committer.
>
>
> That's one of the many issue with squash and merge ;) I suggest you or the
> user squash manually, make the squashed patch work, and push the squashed
> commit as a replacement of the PR (using a `git push --force
> commit:target-pr-branch` is the only way I'm aware to do it).
> That has many advantages:
> 1. It allows to review the squashed commit - which may have issues compared
> to the series of commits
> 2. It allows to better deal with commit message
>
>> 2) GitHub's "Squash and Merge" creates a new commit, but preserves the
>> information about the original commits in the comment. This information is
>> used by the IP tooling to gather information about the contributor, even
>> though the "squash commit" is done by a committer.
>
>
> I don't have a clue about this one.
> The only thing I know is if you break the "squash and merge" operation into
> "squash" and "merge", everything becomes simpler afterwards ;)
>
> HTH
> --
> Mickael Istria
> Eclipse IDE developer, at Red Hat Developers community
>
> _______________________________________________
> incubation mailing list
> incubation@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from
> this list, visit
> https://dev.eclipse.org/mailman/listinfo/incubation
>


Back to the top