From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: John Yates Newsgroups: gmane.emacs.devel Subject: Re: In support of Jonas Bernoulli's Magit Date: Sat, 8 Jul 2017 18:57:29 -0400 Message-ID: References: <8737aac0rb.fsf@wanadoo.es> <7s37aapc4g.fsf@fencepost.gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="94eb2c0b7c744402ed0553d64664" X-Trace: blaine.gmane.org 1499554697 13356 195.159.176.226 (8 Jul 2017 22:58:17 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 8 Jul 2017 22:58:17 +0000 (UTC) Cc: Emacs developers , Richard Stallman , Stefan Monnier To: raman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jul 09 00:58:07 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dTyft-0002nV-8Y for ged-emacs-devel@m.gmane.org; Sun, 09 Jul 2017 00:58:05 +0200 Original-Received: from localhost ([::1]:34253 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dTyfx-000277-AR for ged-emacs-devel@m.gmane.org; Sat, 08 Jul 2017 18:58:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46020) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dTyfk-000270-TH for emacs-devel@gnu.org; Sat, 08 Jul 2017 18:57:58 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dTyfj-0007tt-Ov for emacs-devel@gnu.org; Sat, 08 Jul 2017 18:57:56 -0400 Original-Received: from mail-yw0-x22d.google.com ([2607:f8b0:4002:c05::22d]:33687) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dTyfh-0007m6-V1; Sat, 08 Jul 2017 18:57:54 -0400 Original-Received: by mail-yw0-x22d.google.com with SMTP id x125so24629443ywa.0; Sat, 08 Jul 2017 15:57:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=t0fcssmHS1U31JSWxqEet6KaSUguOeaiL0T2wufOthk=; b=hxdSeYT03hsju+L5naKS/CvLg8BYoGrPu9fEUh9zUIaMqJh2BVYueH7+GciXEIAX0Y nzUFXamyFgA4kwd50p98uKLLvXte/haP4FwqU9lMtDll8PkLS1GKuiu/vNKEj1IIwWH5 4slJ0kQthlQCUJm2SMXONg39t/uRioW3LbVYLr3NQdF3MJDAmB/kI4yW5ZUOzr4mTtea Es666x/sz76m+9siiGXYAqL//VbPMbbFlYMK4/5N3A1d/P017hN5et7F3qzxRFOzAXxI MoH8L8YCOBlFsHlrgiZ4s37JwH1eMueUXUFj9uQiAIp39IAdL4dlQzi7rdeTQ7tkxhvH xofQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=t0fcssmHS1U31JSWxqEet6KaSUguOeaiL0T2wufOthk=; b=HPtsohqwrVVQesraQ/T2DswTEBITlUQ5ewqwXv/PTkRTBG/0AO/MBA6RHMrs5UZejf yx0rfbLz3MhEVSpZtsI+/olPuOilNMi9oJLr1lrFcTUoqQ22entWBTsG9sQyOGzhbKgx qMZKzVCJAFyv60H4rxM1PMYpXJi9w250A1HDmkOGPp1ShyyKznTgyBEMZ2+ALY1N7+PN lW7NOxsfHIR0kjnuC1AAX06wA+oQNhkf65BnXJW3n6w8pdrqEwy/6dlRxKtyNqwXklzf ggPZLMTrrY6JV4LTZI/u+lh00inj97jrmPiqFAKCUPc2WlCNnc7MLADMC7t8PEQMZnkq WwrQ== X-Gm-Message-State: AIVw110pdbqQ+hBn2cobxAerjBQR2SXkoXhks05vQOo9uakdpgnY1h3i 9XTLCbLZLpPLOHYesiwbcnCV+3sbYg== X-Received: by 10.129.153.129 with SMTP id q123mr6927072ywg.150.1499554650519; Sat, 08 Jul 2017 15:57:30 -0700 (PDT) Original-Received: by 10.37.54.37 with HTTP; Sat, 8 Jul 2017 15:57:29 -0700 (PDT) In-Reply-To: X-Google-Sender-Auth: nkKmWOJ2rf_pOO4MdCar5UuvNds X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4002:c05::22d X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:216347 Archived-At: --94eb2c0b7c744402ed0553d64664 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, Jul 8, 2017 at 1:42 PM, raman wrote: > > There are many things that Git lets you do that are at the power-user > end of the spectrum --- an d magit actually makes those doable, whereas > the git commandline would never encourage you to venture even close. I mentioned earlier in this thread that because Magit is so compelling I use it to induce susceptible colleagues to try emacs. Let me elaborate. I work at a company that is trying to up its software engineering practices. An important part of that effort is mandating code reviews. That alone though does not result in particularly useful reviews or feedback. The main obstacle is that developers work until a task is complete and then submit all of their changes as a single, overwhelming review request. There are developers within the company who are familiar with patch series culture as exemplified by the Gnu/Linux kernel. Others, though having no first hand experience, understand the ideas and acknowledge that offering code for review as a well groomed patch series would be a big improvement. The problem is that in the real world code never gets designed / authored / debugged such that it emerges naturally as an intelligible, coherent patch series. It takes real work to extract such a series. And of course most developers have absolutely no idea idea how they would go about turning a workspace or even a chaotic series of incremental commits into such a series. That is where Magit shines. It allows one to move arbitrary chunks of code forward and back among a sequence of commits. As such it gives a developer a concrete visualization of the emerging commits and their contents. Nor is one restricted to moving hunks identified by a diff tool. In Magit a chunk can just as easily be an arbitrary marked region. When I demo Magit for my colleagues they immediately get excited. It makes it clear that fostering a patch series culture need not be a pipe dream. To date I am unaware of any other tool on any platform offering similar functionality. Were an emacs user to ask me to suggest a package (s)he should use to interact with git I would always plug Magit. Not that I would discourage learning VC. Clearly (as Raman has explained) VC has a role. Magit though alters how one thinks about presenting one's coding efforts to the greater world. /john=E2=80=8B --94eb2c0b7c744402ed0553d64664 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Sat, Jul 8, 2017 at 1:42 PM, raman <raman@google.com> wrote:
>
> There a= re many things that Git lets you do that are at the power-user
> end = of the spectrum --- an
d magit actually makes those doable, whereas
&= gt; the git commandline would never encourage =C2=A0you to venture even clo= se.

I mentioned earlier in this thread that because Magit = is so compelling I
use it to induce susceptible colleagues to try= emacs. Let me elaborate.

I work at a company that= is trying to up its software engineering
practices.=C2=A0 An imp= ortant part of that effort is mandating code reviews.
That alone = though does not result in particularly useful reviews or
feedback= .=C2=A0 The main obstacle is that developers work until a task is
complete and then submit all of their changes as a single, overwhelming
review request.

There are developers withi= n the company who are familiar with patch
series culture as exemp= lified by the Gnu/Linux kernel.=C2=A0 Others, though
having no fi= rst hand experience, understand the ideas and acknowledge
that of= fering code for review as a well groomed patch series would be
=
a = big improvement.=C2=A0 The problem is that in the real world code never
gets designed / authored / debugged such that it emerges naturally a= s
an intelligible, coherent patch series.=C2=A0 It takes real wor= k to extract
such a series.=C2=A0 And of course most developers h= ave absolutely no idea
idea how they would go about turning a wo= rkspace or even a chaotic
series of incremental commits into such= a series.

That is where Magit shines.=C2=A0 It al= lows one to move arbitrary chunks
= of code forward and back among = a sequence of commits.=C2=A0 As such it
gives a developer a concr= ete visualization of the emerging commits
and their contents.=C2= =A0 Nor is one restricted to moving hunks identified
by a diff to= ol.=C2=A0 In Magit a chunk can just as easily be an arbitrary
<= div class=3D"gmail_default">mar= ked region.

When I demo Magit for my colleagues th= ey immediately get excited.
It makes it clear that fostering a pa= tch series culture need not be
a pipe dream.

To date I am unaware of any other tool on any platform offering=
similar functionality.

Were an emacs user to ask me to suggest a package (s)he should = use
to interact with git I would always plug Magit.=C2=A0 Not= that I would
discourage learning VC.=C2=A0 Clearly (as Raman has= explained) VC has a
role.=C2=A0 Magit though alters how one thin= ks about presenting one's
coding efforts to the greater world= .

/john=E2=80=8B

--94eb2c0b7c744402ed0553d64664--