public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: merlyn@stonehenge•com (Randal L. Schwartz)
To: Rich Pixley <rich.pixley@palm•com>
Cc: Sitaram Chamarty <sitaramc@gmail•com>, "Ted Ts'o" <tytso@mit•edu>,
	Seth Robertson <in-gitvger@baka•org>,
	"git\@vger.kernel.org" <git@vger•kernel.org>
Subject: Re: Newbie grief
Date: Tue, 01 May 2012 14:05:05 -0700	[thread overview]
Message-ID: <86mx5rmx32.fsf@red.stonehenge.com> (raw)
In-Reply-To: <4FA04D02.6090702@palm.com> (Rich Pixley's message of "Tue, 01 May 2012 13:52:18 -0700")

>>>>> "Rich" == Rich Pixley <rich.pixley@palm•com> writes:

Rich> I want to be able to fetch changes to the branch I currently have checked out.
Rich> Git blocks this because it doesn't know how to cope with the working directory
Rich> in that situation.

It does?  I can always "git fetch origin" in my repo, and the remote
branches are in "origin/master, origin/foo, origin/bar".  Totally
separate from my working tree.

If I want to *examine* them, I can make a WIP commit, or use "git
stash", and then check them out headless:

  git stash save
  git checkout origin/master
  ## examine
  ## now go back
  git checkout master
  git stash pop

and now I can see what the upstream looks like.  Or just diff them:

  git diff ..origin/master

Rich>   Merging is straightforward. Even updating, (checkout), is fairly
Rich> straightforward.  But the insistence on a single tip means that if
Rich> I commit directly to a non-tip commit, git doesn't know what to do
Rich> with the branch pointer.  If it leaves it at my commit, then the
Rich> other changes are essentially orphaned. If it leaves it at the
Rich> other changes, then my commit is essentially orphaned.  While it's
Rich> probably possible to force git to do this anyway, including
Rich> orphaning one set of changes, doing so is of limited value since
Rich> the git interface makes the assumption that branches have a single
Rich> tip anyway.

So, make a set of related names for your branches.  It's better with
names anyway.

Rich> Pushing is blocked in git.  Git simply refuses some push requests
Rich> which have obvious and fairly straightforward semantics.

 git push master:from-merlyn/master

And now someone can look at "from-merlyn/master", and know that it's
from me, and related to master, and either incorporate it into the real
master, or cherry-pick from it, or whatever.  Solved.

Rich> You and I want to share a branch and we each have local,
Rich> unattended cache/mirror repositories that we would like to use to
Rich> pass data between us.  This doesn't work in git because the first
Rich> time you and I make simultaneous changes, whether they collide or
Rich> not, the unattended repositories become wedged.  They each refuse
Rich> to talk to the other until someone manually unwedges them.

No, you do it like above.  Some *person* has to sign off the merge each
time.  But we can share the unmerged changeset through other branches.

Rich> I want that if you and say, Sitaram commit conflicting changes to
Rich> a shared branch, it's easy for me to recognize that the conflict
Rich> exist and easy for me to resolve that conflict in my own
Rich> repository.  I want the source code control system to keep track
Rich> of those things, show them to me/us, and to track and show my
Rich> resolution to you.  This stuff should all be automatic.  It
Rich> shouldn't require explicit testing, manual pulling, nor explicit
Rich> discussion between the three of us.  It shouldn't prohibit that
Rich> either, but it shouldn't require it.

You're asking a lot of an automated system.  I think you're trying to
get a system to replace the communication you should be doing as a
developer.

-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge•com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.posterous.com/ for Smalltalk discussion

  reply	other threads:[~2012-05-01 21:05 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-30 22:30 Newbie grief Rich Pixley
2012-04-30 23:31 ` Seth Robertson
2012-05-01  1:15   ` Rich Pixley
2012-05-01  1:32     ` Junio C Hamano
2012-05-01  1:55       ` Rich Pixley
2012-05-01  3:44     ` Sitaram Chamarty
2012-05-01 11:14       ` Ted Ts'o
2012-05-01 16:13         ` Sitaram Chamarty
2012-05-01 18:15           ` Rich Pixley
2012-05-01 18:20             ` Michael Witten
2012-05-01 18:52               ` Rich Pixley
2012-05-02 21:28                 ` Jakub Narebski
2012-05-01 18:42             ` Randal L. Schwartz
2012-05-01 20:52               ` Rich Pixley
2012-05-01 21:05                 ` Randal L. Schwartz [this message]
2012-05-01 21:12                   ` Junio C Hamano
2012-05-01 21:25                     ` Rich Pixley
2012-05-01 21:28                       ` Randal L. Schwartz
2012-05-01 21:57                         ` Rich Pixley
2012-05-01 22:56                           ` Michael Witten
2012-05-01 23:55                             ` Philip Oakley
2012-05-03 16:08                               ` Hallvard Breien Furuseth
2012-05-03 18:20                                 ` Rich Pixley
2012-05-03 23:04                                   ` Hallvard Breien Furuseth
2012-05-03 23:06                                     ` Hallvard Breien Furuseth
2012-05-03 18:46                             ` Rich Pixley
2012-05-03 21:09                             ` Junio C Hamano
2012-05-03 22:44                               ` Rich Pixley
2012-05-03 22:53                                 ` Randal L. Schwartz
2012-05-03 22:59                                 ` Junio C Hamano
2012-05-04 19:23                                 ` Felipe Contreras
2012-05-04 19:30                             ` Felipe Contreras
2012-05-04 19:41                               ` Michael Witten
2012-05-01 21:29                   ` Rich Pixley
2012-05-01 21:39                     ` Randal L. Schwartz
2012-05-01 22:07                       ` Rich Pixley
2012-05-01 22:17                         ` Andreas Ericsson
2012-05-01 23:01                         ` PJ Weisberg
2012-05-03 18:43                           ` Rich Pixley
2012-05-03 19:09                             ` Nathan Gray
2012-05-03 19:16                               ` Rich Pixley
2012-05-03 20:14                                 ` Randal L. Schwartz
2012-05-03 20:52                                   ` Rich Pixley
2012-05-04 15:56                                     ` Mark Brown
2012-05-04 18:23                                       ` Rich Pixley
2012-05-04 19:14                                         ` Jakub Narebski
2012-05-04 20:00                                         ` Mark Brown
2012-05-02 14:21                         ` Hallvard Breien Furuseth
2012-05-02 15:21                           ` Michael Witten
2012-05-03 12:23                             ` Hallvard Breien Furuseth
2012-05-03 12:53                               ` Randal L. Schwartz
2012-05-03 16:09                               ` Michael Witten
2012-05-03 16:20                                 ` Hallvard Breien Furuseth
2012-05-03 16:44                                   ` Michael Witten
2012-05-03 18:26                                   ` Rich Pixley
2012-05-03 19:33                                     ` Ted Ts'o
2012-05-01 23:30                     ` Felipe Contreras
2012-05-03 18:31                       ` Rich Pixley
2012-05-03 18:58                       ` Rich Pixley
2012-05-04 14:09                         ` Andreas Ericsson
2012-05-04 14:59                           ` Stephen Bash
2012-05-04 16:29                             ` Mark Brown
2012-05-04 19:13                         ` Felipe Contreras
2012-05-01 18:03         ` Rich Pixley
     [not found]       ` <4FA01C73.5000909@palm.com>
2012-05-02  0:44         ` Sitaram Chamarty
     [not found]   ` <4F9F28F5.2020403@palm.com>
2012-05-01  1:37     ` Seth Robertson
2012-05-01  3:04       ` Rich Pixley
2012-05-01  5:32         ` Michael Witten
2012-05-01  6:21           ` Junio C Hamano
2012-05-01  6:24             ` Michael Witten
2012-05-01 17:29             ` Rich Pixley
2012-05-01 17:33           ` Rich Pixley
2012-05-03 19:13           ` Rich Pixley
2012-05-03 20:19             ` Ronan Keryell
2012-05-03 21:13               ` Junio C Hamano
2012-05-03 22:23                 ` Ronan Keryell
2012-05-03 22:33                 ` Rich Pixley
2012-05-03 22:39                   ` Rich Pixley
2012-05-04  1:01                     ` Illia Bobyr
2012-05-04  3:13                       ` Nathan Gray
2012-05-04  4:35                         ` Michael Witten
2012-05-04  5:25                           ` Junio C Hamano
2012-05-04 10:09                             ` Carlos Martín Nieto
2012-05-04 14:50                               ` Junio C Hamano
2012-05-04 17:39                                 ` Junio C Hamano
2012-05-04 16:46                               ` Nathan Gray
2012-05-04 17:17                                 ` Illia Bobyr
2012-05-04 18:10                               ` Rich Pixley
2012-05-04 17:57                           ` Rich Pixley
2012-05-04 19:22                             ` Michael Witten
2012-05-04 19:18                         ` Andrew Sayers
2012-05-04 18:57             ` Jérôme Benoit
2012-05-04 20:03             ` Felipe Contreras
2012-05-04 20:27               ` Junio C Hamano
2012-05-04 20:45                 ` Felipe Contreras
2012-05-04 21:29                   ` Rich Pixley
2012-05-04 22:05                     ` Felipe Contreras
2012-04-30 23:35 ` Jan Krüger
2012-05-01 18:59   ` Rich Pixley
2012-05-02  8:25 ` Philippe Vaucher

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=86mx5rmx32.fsf@red.stonehenge.com \
    --to=merlyn@stonehenge$(echo .)com \
    --cc=git@vger$(echo .)kernel.org \
    --cc=in-gitvger@baka$(echo .)org \
    --cc=rich.pixley@palm$(echo .)com \
    --cc=sitaramc@gmail$(echo .)com \
    --cc=tytso@mit$(echo .)edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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