git/list[1] front-page[2] threads[3] people[4] search[5] about
 

How does git store branchpoints?

From
davetron5000 <davetron5000@gmail.com>
Date
Jun 9, 2008, 14:17 UTC
Message-ID
<beffea8c-fd2a-44d0-a566-3ded5d09a3d2@l42g2000hsc.googlegroups.com>
Following up this:
http://groups.google.com/group/git-version-control/browse_thread/thread/aa34d04120d0c361#
I'm trying to learn/examine the .git directory to see what Git thinks.

What I'm trying to determine is how Git knows the parent of a particular commit, how I can change it, and how that affects merging.

My problem is that I have two branches, and a merge between the two produces conflicts in files that are unchanged on one branch. Since my branches are linked to SVN branches, I'm thinking that Git is not properly clear on their shared history.

Any ideas where to look?
.git/info/refs has some strange data in it:

5a3e01a8327c6139e9311b01548baf4a8876b5e3 refs/heads/local-FOO 71560b15ad6a2a7542556dfdf2d6c763625d5db4 refs/heads/local-trunk efb2ff2ac363600a2aaae60718bc76b6c3db4228 refs/remotes/FOO

The SHA-1 for refs/heads/local-FOO (branch created via git checkout -b local-FOO FOO) doesn't show in gitk --all, but a git log of that shows it to be a somewhat old commit (not the head, nor the branch point).

The SHA-1 for local-trunk is a similarly old commit

The SHA-1 for refs/remotes/FOO is the commit right before the SHA-1 for refs/heads/local-FOO in my git log.

Next: Jakub Narebski
Message 1 of 5 in “How does git store branchpoints?”
  1. davetron5000Jun 9, 2008
  2. Jakub NarebskiJun 9, 2008
  3. davetron5000Jun 9, 2008
  4. Jakub NarebskiJun 9, 2008
  5. David CopelandJun 9, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.