Re: Working copy revision and push pain

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Mar 23, 2008 at 7:54 AM, Jonathan Watt <jwatt@xxxxxxxxx> wrote:
> Elijah Newren wrote:
>  > On Sun, Mar 23, 2008 at 7:19 AM, Jonathan Watt <jwatt@xxxxxxxxx> wrote:
>  >> Johannes Schindelin wrote:
>  >>  > Hi,
>  >>  >
>  >>  > On Sun, 23 Mar 2008, Jonathan Watt wrote:
>  >>  >
>  >>  >> There seems to be a problem with git-push when the working copy of the
>  >>  >> directory being pushed to came from the magic revision HEAD, but not
>  >>  >> when the working copy came from some other revision.
>  >>  >
>  >>  > http://git.or.cz/gitwiki/GitFaq#head-b96f48bc9c925074be9f95c0fce69bcece5f6e73
>  >>  >
>  >>  > Sidenote: I am constantly amazed how people have no problem accepting that
>  >>  > a CVS-Server has no working directory, but all of a sudden think that a
>  >>  > Git-server should have one, and auto-update it.
>  >>
>  >>  Hi Dscho. I think you've misread my email. (Or not read it. ;-)) I do not expect
>  >>  git-push to update the working copy of the repository being pushed to. In fact
>  >>  my complaint would be more that it *does* appear to modify the working copy
>  >>  (well, not so much modify the working copy as get confused about which revision
>  >>  the working copy came from) when the working copy came from HEAD.
>  >
>  > Ah, I hadn't thought of it that way before.  I think you are
>  > suggesting that pushing to the active branch of a repository with an
>  > associated working copy should cause the HEAD to become detached.  Is
>  > that right?
>
>  To be honest, I'm not sure what you mean by "HEAD to become detached". If you
>  mean that the git-push should, if necessary, stop associating the working copy
>  with HEAD if it's going to change HEAD, then absolutely. It wasn't the same
>  solution as I was thinking of (stop associating the working copy with HEAD and
>  instead associate it with the sha1 HEAD currently points to), but I guess it's
>  the same result. :-)
>
>  Jonathan

In git, HEAD always refers to the currently active branch...if there
is one.  (Also note that each branch tracks its most recent commit.)
If there is no currently active branch because you checked out a tag
or some arbitrary commit, then HEAD is said to be detached, and HEAD
will track the particular commit you checked out.  The end result is
that HEAD is always the most recent commit to which your working copy
is relative to.  See also
http://www.kernel.org/pub/software/scm/git/docs/glossary.html

So, it sounds like we're both saying that in your case, you'd like the
HEAD become detached and track the sha1 that it previously pointed to
before your push rather than continuing to track the updated branch.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux