git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Robin Rosenberg <robin.rosenberg.lists@dewire.com>
To: Bill Lear <rael@zopyra.com>
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>,
	Michael Dressel <MichaelTiloDressel@t-online.de>,
	git@vger.kernel.org
Subject: Re: pull into dirty working tree
Date: Wed, 13 Jun 2007 22:17:56 +0200	[thread overview]
Message-ID: <200706132217.57075.robin.rosenberg.lists@dewire.com> (raw)
In-Reply-To: <18032.15862.835008.22589@lisa.zopyra.com>

onsdag 13 juni 2007 skrev Bill Lear:
> On Wednesday, June 13, 2007 at 19:30:23 (+0100) Johannes Schindelin writes:
> >Hi,
> >
> >On Wed, 13 Jun 2007, Bill Lear wrote:
> >
> >> Not completely: they don't want to commit, as this will then "pollute"
> >> the history in their working repository (which is just temporarily
> >> being used to play with a new feature, idea, bug fix, optimization,
> >> etc.).  This pollution with a handful of garbage would then have to be
> >> undone were they to say "ok, that's really not a good idea".  If a
> >> pull into a dirty tree were possible, that last step could be just a
> >> simple reset, or continuing to explore with the code, etc.
> >
> >Notice that I am _not_ saying that CVS is bad. I am saying that their 
> >workflow is likely bad (and yes, they should change that workflow, since 
> >they now _can_).
> 
> Yes, I have urged this.  But, they are stubborn, smart people, and if
> they see tool X allow something, they wonder why tool Y does not
> support it.
> 
> >Two things do they risk happily, which they should not do:
> >
> >- they test their new feature against different references. For example, 
> >  it might well be that they tested cases A, B, and C before pull, and D, 
> >  E and F after that. It is really easy to get lost in what you have, and 
> >  what not. Now, guess what. Merges are known to break things sometimes. 
> >  Even the best merge algorithm. Now your developers say "we tested it, 
> >  and the merge broke it, it's not our fault". But it is.
> 
> Well, their testing is something along the line of "I'm going to hack
> something here, and then I want to see if Joe's latest changes work
> with it".  Then, they want to pull in Joe's changes, run a test, and
> if their changes don't work, fix them, discard them, etc.
> 
> >- That new feature will have to be committed at some stage. Either your 
> >  devs commit at the end, which makes it a monster commit, which is bad. 
> >  Or they are _already_ using the suggested workflow "commit && pull", 
> >  which makes your whole complaint moot.
> 
> Perhaps: again, they may just be taking stabs that they know are wild,
> and will likely not be committed.
> 
> I'm not trying to argue for their point: I do most of my new work
> on branches, very rarely on the master branch, and can handle
> the git pull not working in a dirty tree with merge issues.
> 
> Some of the people we work with are not developers per se: they are
> engineers who sometimes like to fiddle (say, with a compiler
> optimization setting) and who never push into our company repo.
> They only see CVS and compare git to it.  When git prevents you
> from doing something they see as perfectly reasonable, they get
> annoyed and say "git sucks".  I'm battling in the git corner against
> this, but there is only so much I can do.

A typical case I recognize is a few printfs or disabling a feature that makes 
it harder to debug with no intentions whatsoever to commit them. What we see 
when the tools more or less forces people to "temporarily" commit stuff is 
that that stuff is often left there. "Oh, I forgot". Gah.

Git has this ability when checking out, so why not on pull or merge?

With stacked git I typically create a new patch, then I can push it whenever I 
want to have some more tracing.

-- robin

  reply	other threads:[~2007-06-13 20:18 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-13 15:03 pull into dirty working tree MichaelTiloDressel
2007-06-13 15:36 ` Bill Lear
2007-06-13 17:31   ` Michael Dressel
2007-06-13 18:12     ` Bill Lear
2007-06-13 18:30       ` Johannes Schindelin
2007-06-13 18:56         ` Bill Lear
2007-06-13 20:17           ` Robin Rosenberg [this message]
2007-06-13 23:32             ` Johannes Schindelin
  -- strict thread matches above, loose matches on Subject: below --
2007-06-13 14:14 Bill Lear
2007-06-13 14:38 ` Pierre Habouzit
2007-06-13 14:43   ` Pierre Habouzit
2007-06-13 14:47     ` Pierre Habouzit
2007-06-13 14:45   ` Bill Lear
2007-06-13 14:53     ` Pierre Habouzit
2007-06-13 15:01 ` Randal L. Schwartz
2007-06-13 19:28   ` Alex Riesen
2007-06-13 19:32     ` Randal L. Schwartz
2007-06-13 20:47       ` Alex Riesen
2007-06-13 20:52         ` Randal L. Schwartz
2007-06-13 21:39           ` Alex Riesen
2007-06-13 22:01             ` Randal L. Schwartz
2007-06-13 22:27               ` Alex Riesen
2007-06-13 15:01 ` Johannes Schindelin
2007-06-13 15:40   ` Andy Parkins
2007-06-13 15:54     ` Johannes Schindelin
2007-06-13 15:56     ` Bill Lear
2007-06-13 16:07       ` Johannes Schindelin
2007-06-13 16:30         ` Bill Lear
2007-06-13 17:13   ` Junio C Hamano
2007-06-14  4:22 ` Daniel Barkalow
2007-06-14  5:21 ` Linus Torvalds
2007-06-14  7:49   ` Junio C Hamano
2007-06-14  8:01     ` Raimund Bauer
2007-06-14  8:06     ` Steven Grimm
2007-06-14 14:25       ` Nicolas Pitre
2007-06-14 12:46   ` Bill Lear
2007-06-14 15:46     ` Linus Torvalds
2007-06-14 20:20       ` Olivier Galibert
2007-06-14 20:30         ` Linus Torvalds
2007-06-15  0:46       ` Martin Langhoff
2007-06-15  1:07         ` Linus Torvalds
2007-06-15  3:33           ` Martin Langhoff
2007-06-15 18:26             ` Robin Rosenberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200706132217.57075.robin.rosenberg.lists@dewire.com \
    --to=robin.rosenberg.lists@dewire.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=MichaelTiloDressel@t-online.de \
    --cc=git@vger.kernel.org \
    --cc=rael@zopyra.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).