git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Working copy revision and push pain
@ 2008-03-23 12:39 Jonathan Watt
  2008-03-23 13:02 ` Johannes Schindelin
  0 siblings, 1 reply; 32+ messages in thread
From: Jonathan Watt @ 2008-03-23 12:39 UTC (permalink / raw)
  To: git

Hi,

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.

Say I've got a repository called a:

  mkdir a
  cd a
  git-init
  echo "line 1" > file
  git-add file
  git-commit -m "commit 1" file
  echo "line 2" >> file
  git-commit -m "commit 2" file
  echo "line 3" >> file
  git-commit -m "commit 3" file

Now let's say there's a clone of repository a called b, and b has HEAD checked
out. If I make changes in a and push them to b, there's a problem:

  git-clone . ../b
  echo "line 4" >> file
  git-commit -m "commit 4" file
  git-push ../b
  cd ../b
  git-log file # says the working copy came from commit 4, but...
  cat file # only lists up to line 3 :-/

If on the other hand I have a clone of repository a called c that has a non-HEAD
revision checked out, there's no problem:

  git-clone ../a ../c
  cd ../c
  git-checkout HEAD^
  cd ../a
  echo "line 5" >> file
  git-commit -m "commit 5" file
  git-push ../c
  cd ../c
  git-log file # says the working copy came from commit 3, and...
  cat file # only lists up to line 3. great!

I don't know anything about the implementation of git, but could this mean that
when the working copy comes from HEAD git tracks it as coming from the revision
"HEAD" instead of the underlying revision's sha1? If so, this seems like an
unnecessary gotcha/pain point. Couldn't git be changed to always track the sha1
of the revision it really came from? That would seem like the correct thing to
do, and it would be nice to avoid unnecessarily breaking working copies.

Regards,
Jonathan

^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2008-03-31  2:10 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-23 12:39 Working copy revision and push pain Jonathan Watt
2008-03-23 13:02 ` Johannes Schindelin
2008-03-23 13:19   ` Jonathan Watt
2008-03-23 13:45     ` Elijah Newren
2008-03-23 13:54       ` Jonathan Watt
2008-03-23 14:06         ` Elijah Newren
2008-03-23 14:22           ` Johannes Schindelin
2008-03-23 14:48             ` Jonathan Watt
2008-03-23 14:56               ` Johannes Schindelin
2008-03-23 15:25                 ` Jonathan Watt
2008-03-23 16:00                   ` Johannes Schindelin
2008-03-25 19:25                     ` Auto detaching head options (Re: Working copy revision and push pain) Jan Hudec
2008-03-25 19:58                       ` Johannes Schindelin
2008-03-25 23:24                       ` Jeff King
2008-03-26 18:49                         ` Junio C Hamano
2008-03-29  8:27                           ` Auto detaching head options (update) " Jan Hudec
2008-03-29  8:47                             ` Jeff King
2008-03-31  1:53                               ` Junio C Hamano
2008-03-31  1:59                                 ` Jeff King
2008-03-31  2:09                                   ` Jeff King
2008-03-23 19:48             ` Working copy revision and push pain Elijah Newren
2008-03-23 14:27           ` Jonathan Watt
2008-03-23 14:34             ` Johannes Schindelin
2008-03-23 16:20               ` Johan Herland
2008-03-23 17:24                 ` Jonathan Watt
2008-03-23 18:21                   ` Junio C Hamano
2008-03-23 19:42                     ` Junio C Hamano
2008-03-23 18:23                   ` Johannes Schindelin
2008-03-24 15:22                 ` Johannes Schindelin
2008-03-24 18:00                   ` Johan Herland
2008-03-23 14:11     ` Johannes Schindelin
2008-03-23 14:35       ` Jonathan Watt

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).