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

[PATCH] user-manual: insert earlier of mention content-addressable architecture

From
JFJ. Bruce Fields <bfields@citi.umich.edu>
Date
Mar 4, 2007, 21:59 UTC
Message-ID
<11730455592152-git-send-email-bfields@citi.umich.edu>
In-Reply-To
<11730455591178-git-send-email-bfields@citi.umich.edu>
From: J. Bruce Fields <bfields@citi.umich.edu>

The content-addressable design is too important not to be worth at least a brief mention a little earlier on.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
---
 Documentation/user-manual.txt |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index 0979211..33f8a72 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -391,15 +391,20 @@ index 8be626f..d7aac9d 100644
 As you can see, a commit shows who made the latest change, what they
 did, and why.
 
-Every commit has a 40-hexdigit id, sometimes called the "object name"
-or the "SHA1 id", shown on the first line of the "git show" output.
-You can usually refer to a commit by a shorter name, such as a tag or a
-branch name, but this longer name can also be useful.  Most
-importantly, it is a globally unique name for this commit: so if you
-tell somebody else the object name (for example in email), then you are
-guaranteed that name will refer to the same commit in their repository
-that it does in yours (assuming their repository has that commit at
-all).
+Every commit has a 40-hexdigit id, sometimes called the "object name" or the
+"SHA1 id", shown on the first line of the "git show" output.  You can usually
+refer to a commit by a shorter name, such as a tag or a branch name, but this
+longer name can also be useful.  Most importantly, it is a globally unique
+name for this commit: so if you tell somebody else the object name (for
+example in email), then you are guaranteed that name will refer to the same
+commit in their repository that it does in yours (assuming their repository
+has that commit at all).  Since the object name is computed as a hash over the
+contents of the commit, you are guaranteed that the commit can never change
+without its name also changing.
+
+In fact, in <<git-internals>> we shall see that everything stored in git
+history, including file data and directory contents, is stored in an object
+with a name that is a hash of its contents.
 
 Understanding history: commits, parents, and reachability
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -2155,6 +2160,7 @@ See gitlink:git-config[1] for more details on the configuration
 options mentioned above.
 
 
+[[git-internals]]
 Git internals
 =============
 
-- 
1.5.0.gb75812-dirty
Previous: J. Bruce FieldsNext: J. Bruce Fields
Message 5 of 27 in “Documentation (mostly user manual) patches”
  1. J. Bruce FieldsMar 4, 2007
  2. Documentation: mention module option to git-cvsimportJ. Bruce Fields, Mar 4, 2007
  3. user-manual: reset to ORIG_HEAD not HEAD to undo mergeJ. Bruce Fields, Mar 4, 2007
  4. user-manual: ensure generated manual references stylesheetJ. Bruce Fields, Mar 4, 2007
  5. user-manual: insert earlier of mention content-addressable architectureJ. Bruce Fields, Mar 4, 2007
  6. user-manual: how to replace commits older than most recentJ. Bruce Fields, Mar 4, 2007
  7. user-manual: more detailed merge discussionJ. Bruce Fields, Mar 4, 2007
  8. glossary: Add definitions for dangling and unreachable objectsJ. Bruce Fields, Mar 4, 2007
  9. Yasushi SHOJIMar 5, 2007
  10. Robert PluimMar 16, 2007
  11. J. Bruce FieldsMar 16, 2007
  12. Junio C HamanoMar 5, 2007
  13. J. Bruce FieldsMar 5, 2007
  14. J. Bruce FieldsMar 11, 2007
  15. 1/6 glossary: fix overoptimistic automatic linking of defined termsJ. Bruce Fields, Mar 11, 2007
  16. 2/6 user-manual: fix inconsistent exampleJ. Bruce Fields, Mar 11, 2007
  17. 3/6 user-manual: fix inconsistent use of pull and mergeJ. Bruce Fields, Mar 11, 2007
  18. 4/6 user-manual: fix missing colon in git-show exampleJ. Bruce Fields, Mar 11, 2007
  19. 5/6 user-manual: fix rendering of history diagramsJ. Bruce Fields, Mar 11, 2007
  20. 6/6 user-manual: install user manual stylesheet with other web documentsJ. Bruce Fields, Mar 11, 2007
  21. J. Bruce FieldsMar 11, 2007
  22. Ramsay JonesMar 13, 2007
  23. J. Bruce FieldsMar 14, 2007
  24. Junio C HamanoMar 11, 2007
  25. Ramsay JonesMar 7, 2007
  26. J. Bruce FieldsMar 16, 2007
  27. J. Bruce FieldsMar 16, 2007

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.