3 ms·
It is actually even simpler, a commit is a complete file tree with some message, other metadata and hashs of its parent commits. A commit without parent is the
by mmis1000 6y ago
It is actually even simpler, a commit is a complete file tree with some message, other metadata and hashs of its parent commits.
A commit without parent is the initial commit.
A merge commit is simply a commit that has more than one parent commits.
In reality, you can put whatever content on whatever commits as long as these rule don't break.
The git is just the program that you used to merge the file tree, while you can disgrace with it with '--no-commit' and modified the merged file tree as you want.