Return-Path: X-Original-To: apmail-ignite-dev-archive@minotaur.apache.org Delivered-To: apmail-ignite-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 310FF1879F for ; Thu, 1 Oct 2015 20:39:06 +0000 (UTC) Received: (qmail 15512 invoked by uid 500); 1 Oct 2015 20:39:06 -0000 Delivered-To: apmail-ignite-dev-archive@ignite.apache.org Received: (qmail 15472 invoked by uid 500); 1 Oct 2015 20:39:06 -0000 Mailing-List: contact dev-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list dev@ignite.apache.org Received: (qmail 15459 invoked by uid 99); 1 Oct 2015 20:39:05 -0000 Received: from Unknown (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Oct 2015 20:39:05 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 5E027180973 for ; Thu, 1 Oct 2015 20:39:05 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.651 X-Spam-Level: *** X-Spam-Status: No, score=3.651 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=3, KAM_INFOUSMEBIZ=0.75, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-us-west.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id AwSMYaSt28m9 for ; Thu, 1 Oct 2015 20:38:51 +0000 (UTC) Received: from mail-ob0-f181.google.com (mail-ob0-f181.google.com [209.85.214.181]) by mx1-us-west.apache.org (ASF Mail Server at mx1-us-west.apache.org) with ESMTPS id CBCE9202AF for ; Thu, 1 Oct 2015 20:38:50 +0000 (UTC) Received: by obcgx8 with SMTP id gx8so67369513obc.3 for ; Thu, 01 Oct 2015 13:38:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=EMqtEUc2gyDKh0qjctRaI9cFAFj3FIl2DobLlqOl91o=; b=XolGItxuCeO1ZbhJ6J3oIu1AIaqKtvCaDnuRfIOBgujtEPClG6ss6TWHotoIHBzcqj tg1h4bb7JduRX3XBiMkdNwRuxfN+H4PQowbY8n+qmuC1v/Q02xNNDVI14ie9EgUbTRCg RPLuocFd7+Z0IOgYCP4EqExb3fp+9A2VRfzIna95He3GDWoMFroHao3yt2mhgzevg1R9 Ld0pas1q0koP1R7k0zRSEptV6+2MjAD+3brf0zgDjqT4Z8KpMDB05mAYGRl/IhyUc/MR hXRU1v788IhWYpCcIy5e5S82pZ6YrkQgfFCZqM1Y0MbxIAkpgouYdljxWMANQS4cwSoZ Z/wA== X-Received: by 10.60.159.232 with SMTP id xf8mr7059130oeb.34.1443731930117; Thu, 01 Oct 2015 13:38:50 -0700 (PDT) MIME-Version: 1.0 Received: by 10.76.24.129 with HTTP; Thu, 1 Oct 2015 13:38:10 -0700 (PDT) In-Reply-To: <560D6DE5.8060103@apache.org> References: <20150930225208.GT13213@boudnik.org> <560D6DE5.8060103@apache.org> From: Sergi Vladykin Date: Thu, 1 Oct 2015 23:38:10 +0300 Message-ID: Subject: Re: Let's please fix the mess in Git To: dev@ignite.apache.org Content-Type: multipart/alternative; boundary=047d7bd6c4e4d87d130521110881 --047d7bd6c4e4d87d130521110881 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Brane, 2015-10-01 20:31 GMT+03:00 Branko =C4=8Cibej : > Stop. Right. There. > > If you're going to start pointing fingers at people you can just shut > down the project because you're going down the road of petty bickering. > That's a great way to dissolve the community into chaos. > > Of course we must be polite to each other if we want to work together. I'd suggest Pavel to write personal emails instead of discussing teammates on the dev list. > > On the topic of git usage: > > * Raul is absolutely right about commit messages. When you write a > commit message, think about how useful it would be to *you* if > someone else were writing it. > Agree, moreover I think it is a good idea to use the same description as in Jira issue and pull request name. > > * I find it really ludicrous that committers on this project are going > through the GitHub pull request rigmarole instead of pushing > directly to the ASF repository. Surely you're not serious? You're > forcing others to RTC instead of doing the right thing in the first > place. > For me the right thing is to use convenient and reliable tools with straightforward automated work flow to avoid human errors as much as possible. In this respect git by itself is a wrong tool just because it allows to do a single thing multiple ways and now we have to argue which way is "right" or "wrong". GitHub + apply-pull-request.sh is a right choice for me because it does not allow random shit to happen and you always share the responsibility with the reviewer. And you are right, I actually prefer to enforce RTC for everyone, because as far as I remember CTR was encouraged only for minor changes like javadoc fix and it was strongly recommended to do a review for more complex changes, but this strong recommendation is simply ignored right now. See https://cwiki.apache.org/confluence/display/IGNITE/Jira+Process > > * Last but not least: learn to use your tools. The best way to do this > is for someone who really gets git to write up usage guidelines. The > "Git Process" page in cwiki is missing quite a few important bits: > especially actual examples, naming conventions (for tags etc.) and > so on. Git semantics are fsck'd up enough as it is, it makes no > sense for every developer to try to figure out the right way by > herself. > Agree that we need to describe naming conventions but everything that can be automated here must be automated. And we already have done that: look inside of `scripts` folder. Sergi > > -- Brane > > > > On 01.10.2015 19:01, Pavel Tupitsyn wrote: > > Sergi, your point is valid, but you are shifting the point of the > > discussion. > > > > Current master branch history, indeed, looks unacceptable. Mostly due t= o > > insufficient commit descriptions from Anton and Semyon. > > > > On Thu, Oct 1, 2015 at 7:34 PM, Sergi Vladykin > > > wrote: > > > >> Raul, > >> > >> First of all I think it is not an excuse that you did bad thing becaus= e > >> others did as well. > >> Lets try to be perfect ourselves before blaming others. > >> > >> Do you know how I lately solve these issues with comments, squashing a= nd > >> other stuff? > >> I do not do any merges of *my* changes to master at all. Almost never. > >> I just provide pull request on GitHub and ask a reviewer to merge it o= r > >> return with comments. > >> And when someone asks me to do the same I just do it using provided > script > >> *scripts/apply-pull-request.sh* > >> There is no chance to do something wrong here. > >> > >> I encourage you to do the same and all of your questions will disappea= r > in > >> a second. > >> > >> Sergi > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> 2015-10-01 1:52 GMT+03:00 Konstantin Boudnik : > >> > >>> On Wed, Sep 30, 2015 at 09:32PM, Raul Kripalani wrote: > >>>> Igniters, > >>>> > >>>> 1. Git history is polluted by lots of commits like: "Merge > >>> remote-tracking > >>>> branch 'origin/ignite-1.4' into ignite-1.4". Is there a logical reas= on > >>> for > >>>> this? Why doesn't the team use git pull --rebase? > >>>> > >>>> 2. Let's please define a policy for Git commit messages. The current > >> Git > >>>> history is an *utter mess*. This is totally unacceptable on master: > >>>> https://imgur.com/I95TPMd. > >>>> > >>>> a. Commit messages must carry a context. You should not oblige yo= ur > >>>> fellows to dig into the diff to understand what you've done. > >>>> > >>>> b. Even if you are referencing a JIRA ticket, please include some > >>>> context. Nobody remembers ticket numbers by heart and it's a waste o= f > >>> time > >>>> to open a browser tab for every commit. > >>>> > >>>> c. Pasting the full JIRA URL is wasteful and uses precious real > >>> estate. > >>>> Everybody knows that if you refer to IGNITE-nnnn, you're referring t= o > >> an > >>>> ASF JIRA ticket. > >>>> > >>>> I agree with many of the tips on this post about Git commit message > >> best > >>>> practices [1]. I suggest you read if you haven't yet. > >>>> > >>>> 3. Let's clarify the merging policy. Yakov complained because I merg= ed > >> a > >>>> branch without squashing. But I see people are doing this. He also > >>>> referenced a Wiki page that explained the procedure for Github pull > >>>> requests. Are we allowed to merge internal branches without squashin= g? > >>> We shouldn't be. We had this lengthy discussion about proper git > >> practices > >>> where it has been established that squashing of intermediate commits > is > >> a > >>> blessing because > >>> a) no one is interested in "Oh, heck - I forgot the letter" commits > >>> b) rebase-then-merge allows to avoid meaningless "Merge commits", > which > >>> might > >>> only be valuable for bring in some big feature branches, etc. > >>> > >>> Good points on the rest of it as well - let's have some discipline > around > >>> this. > >>> > >>> Cos > >>>> [1] http://chris.beams.io/posts/git-commit/ > >>>> > >>>> Regards, > >>>> > >>>> *Ra=C3=BAl Kripalani* > >>>> PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Dat= a > >> and > >>>> Messaging Engineer > >>>> http://about.me/raulkripalani | > >> http://www.linkedin.com/in/raulkripalani > >>>> http://blog.raulkr.net | twitter: @raulvk > > > > > > --047d7bd6c4e4d87d130521110881--