Re: Newbie grief
- From
- Rich Pixley <rich.pixley@palm.com>
- Date
- May 1, 2012, 18:52 UTC
- Message-ID
- <4FA030D1.5030301@palm.com>
- In-Reply-To
- <CAMOZ1Bue4r7aP75xaeKkFC08WfOqD8O41pkSQGx7RSbW5xWcdg@mail.gmail.com>
On 5/1/12 11:20 , Michael Witten wrote:
Show 12 quoted lines
> On Tue, May 1, 2012 at 18:15, Rich Pixley<rich.pixley@palm.com> wrote: > >> I want pull to work even without merging. I want to be able to share a >> branch between different repositories and different users while the source >> code control system tracks this for me > > I believe you are missing the point that a `pull' in git is a `fetch' > followed by a `merge'. You should read about the `fetch' command by > reading (`git help fetch'), and make sure you understand how to use > refspecs; you will probably find it very instructive to play around > by specifying explicit refspecs to `git fetch' rather than relying > on the implicit rules (which can be somewhat confusing).
Yes, I'm aware of the distinction within git. Confusing is an understatement. It seems that in most cases git has no defaults nor implicit rules and when it does, they are frequently surprising or unfathomable. I suppose it's nice that they can be set explicitly, but sad that they pretty much must be.
That git uses the word "pull" to mean something different than previous source code control systems only adds to the confusion. I was using "pull" in the more general sense of pushing and pulling data, not in the very narrow meaning of "git fetch + git merge".
I'm still pretty much lost on refspecs and refs. The terms are apparently not used in the manuals I've been reading and they don't seem to be used consistently even within git error messages.
Is "refspec" the git word for the branch pointer that points to the childless commit that defines a branch?
--rich