As I work more and more with git and GitHub I have become really interested in the version control processes of individuals and teams for developing software.
My next thought is about if the git log of commits should be a real time representation of how long the work actually took you to complete? Does it matter? There is probably a multitude of better ways to check this work, but does anyone do this?
Let me give you an example. Let's say I am building a static site. I will have an HTML file and a CSS file. I start working on the HTML file to build out the scaffold of the markup and start to putting in placeholder content. I am making commits as I go.
Should a git log be real time? Should it show how long I actually took to do this work?
Now, let's say I have made changes to multiple files like CSS and Javascript files. The CSS is setting up styles and the Javascript is functionality. I committed each in their own commits. This way styling changes and functionality could be rolled back, if needed, on their own without undoing all of it.
But, when I did this work I wrote all of the CSS and then went straight to the Javascript before creating the commits. Once I was done with the Javascript I did a commit or the CSS and then did another commit for the Javascript file.
This makes it look like in the timestamps that the CSS is put in and then seconds later the JS is put in.
Is this an issue for some folks? Does it appear to some that the JS only took seconds to write? Should there be a difference in timestamps to show how long the JS work took? To do that I would need to make sure to do the CSS work and commit it before moving on to the JS work. I might forget to do this and end up with all of the files changed before I realize I should have committed.
Is this a big deal?
Like the topic!
I just see commits a little units of work, less like people in a queue, more like bolts in a car. So personally I don't place any importance on timestamps, and am only concerned about commit ordering in so far as merge conflicts and other forms of clobbering.
Also I make extensive use of rebasing and that resets commit timestamps, so a lot of my work appears to have taken a day of thinking time and 0.01 sec to code up, looking at a git log anyway.