On Sat, 29 Apr 2006, linux@xxxxxxxxxxx wrote: > > Well, the only reason that you need ANY commit in the repository is > because it's part of history, and comparing it with other versions is > meaningful. So what trees, not already in the ancestry graph of a > given commit, are useful to compare to? In particular, useful for some > automated process; manual comparisons can always be done manually. > > Nothing's jumping out at me. Any suggestions? See below. Not necessary all those require connectivity. Most of them are not my ideas. * "prior" - heads that represent topic branch merges This is the "pu" branch case, where the head is a merge of several topic branches that is continually moved forward. topic branches head ,___. ,___. | TA1 | | TB1 | `---' `---' ,__. ^\_____^\____| H1 | `--' + some topic branch changes and a republish: ,___. ,___. | TA1 | | TB1 | `---' `---'^ ,__. |^\_____^\____| H1 | | | `--' ,_|_. ,_|_. P | TA2 | | TB2 | | `---' `---'^ | ^ ^ | ,_|_. | | | TA3 | | | `---' | ,__. ^\______\____| H2 | `--' key: ^ = parent P = prior * "bind" - for subprojects bind links from master project commit to externally managed embedded third-party project, for example Linux kernel for some mainly userspace project, or library or engine for some application. Additionally it provides root dir where to attach subproject. * "original" for rebase before rebase: A---B---C topic / / / D---E---F---G master after rebase ------A---B---C / ^ ^ ^ / : : : / A'--B'--C' topic / / D---E---F---G master where ':' denotes "original" link. Note that old branch is not pointed by any head, and would be pruned without connectivity * "original" or "cherrypick" for cherry-picking A--------B---C bugfix / ^ / : D---E---F---G---B'---H main * "revert" for reverting commits -- Jakub Narebski - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html