Gentoo Archives: gentoo-dev

From: William Hubbs <williamh@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Git workflow
Date: Sat, 04 Jul 2015 19:23:18
Message-Id: 20150704192308.GA3222@linux1
In Reply to: Re: [gentoo-dev] Git workflow by NP-Hardass
1 On Sat, Jul 04, 2015 at 02:33:04PM -0400, NP-Hardass wrote:
2 >
3 >
4 > On July 4, 2015 2:17:41 PM EDT, "C Bergström" <cbergstrom@×××××××××.com> wrote:
5 > >I realize that this is subject to lots of different opinions and that
6 > >my input doesn't carry much weight - At least I thought it's a topic
7 > >that should be brought up (again?)
8 > >---------
9 > >To start.... I hate git.. I have used it for years now and the
10 > >multitude of ways that are possible to accomplish nearly the same
11 > >thing are *annoying* at best.. With that rant out of the way on to the
12 > >point..
13
14 Just find a workflow that works for you. Git has a lot of power, but you
15 don't have to know everything about it. :-)
16
17 > >---------
18 > >I super don't like "merge" workflows.
19 >
20 > Just a short note, the last time I read the git workflow on the wiki [0], rebase of one's commit is suggested with fallback to merge if unable to rebase.
21
22 Same here, merge workflows are evil.
23
24 I can't think of a reason you would be unable to rebase other than, "I
25 don't want to resolve the conflicts, so I'm just going to merge".
26
27 >
28 > >1) "merge commits" are confusing at best and normal tools don't
29 > >display and work with them as you'd always expect
30 >
31 > It's a GUI, but dev-util/meld provides a pretty nice interface for git merges.
32
33 guis are irrelivant if you can't use them for one reason or another.
34
35 >
36 > >
37 > >2) merge commits lead to multiple parents, which breaks a clean and
38 > >simple to follow linear history
39 > >---------
40
41 Agreed.
42
43 > >What I personally prefer is a rebase workflow.
44 > >The downsides
45 > >1) Requires to you rebase before pushing. Which can be slightly more
46 > >work than just a lazy resolution of the conflicting "merge commit"
47 > >(depending on if you flatten your commits)
48 > >
49 > >2) May not be the most popular git work-flow.
50 > >
51 > >3) Due to #2 from above - may have detractors and or less people who
52 > >are familiar with it.
53 > >--------------
54 > >I'm of the mindset that if you're going to keep something under
55 > >revision - the history should be clear and clean. Linear is the only
56 > >way to fly for that. For those using cvs or svn - that's what they'll
57 > >be familiar with and probably expect to find in a git log. You can
58 > >start with forcing rebase and keep a clean history - if one day it
59 > >proves too problematic you can switch over to "merging" - the other
60 > >way isn't really possible to do cleanly, depending on your tools..
61
62 I firmly agree. Merge commits are very difficult at best to make any
63 sense out of. The master branch of a repo should be kept clear and clean
64 of those.
65
66 William

Attachments

File name MIME type
signature.asc application/pgp-signature