----- Original Message ----- From: Sharan Basappa To: Git for human beings Cc: philipoak...@iee.org Sent: Saturday, May 21, 2016 5:02 PM Subject: Re: [git-users] How GIT stores data
Do note that there is no file date information stored in the tree/blob data. The only place dates are recored is at the point of the commit. Likewise the only file permission stored is the *nix executable bit Dear Philip, So, the snapshot is taken when commit is done? Also, what does the SHA that is returned when a commit is complete indicate? is it the overall signature for the snapshot or commit identifier? Almost, but not quite. Each file snapshot is taken at the time it was added to the index. So most were not taken at the time of the commit, but were taken earlier (perhaps at an earlier commit if the file was not modified ;-) Each sha1 is a hash over the content of that object. Because the tree, commit and tag objects each contain a list of subordinate sha1's that they cover, then you get a complete crypto security over the appropriate history. The commit object will list the previous commit's sha1, the sha1 of the top level tree, and the date it was committed, which fully wraps up the history and status up to that point. Minor aside, the commit object acually has two dates, one for the originating author, and one for the authorising committer (the manager). For local local project they can be the same person, for big projects (Git, Linux, etc.) they will be different. -- Philip -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.