Bernhard R. Link venit, vidit, dixit 30.11.2009 15:43: > This adds a new commit denoting tha current branch has the same > tree as another branch, thus allowing fast-forward from the named > commits to this one. > > TODO: manpage, rewrite as builtin once the semantics are accepted? > --- > .gitignore | 1 + > Makefile | 1 + > git-equal-tree-marker.sh | 50 ++++++++++++++++++++++++++++++++++++++++++++++ > 3 files changed, 52 insertions(+), 0 deletions(-) > create mode 100644 git-equal-tree-marker.sh > > diff --git a/.gitignore b/.gitignore > index ac02a58..248d146 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -39,6 +39,7 @@ > /git-difftool > /git-difftool--helper > /git-describe > +/git-equal-tree-marker > /git-fast-export > /git-fast-import > /git-fetch > diff --git a/Makefile b/Makefile > index 4dba10e..913d4c4 100644 > --- a/Makefile > +++ b/Makefile > @@ -336,6 +336,7 @@ TEST_PROGRAMS = > SCRIPT_SH += git-am.sh > SCRIPT_SH += git-bisect.sh > SCRIPT_SH += git-difftool--helper.sh > +SCRIPT_SH += git-equal-tree-marker.sh > SCRIPT_SH += git-filter-branch.sh > SCRIPT_SH += git-lost-found.sh > SCRIPT_SH += git-merge-octopus.sh > diff --git a/git-equal-tree-marker.sh b/git-equal-tree-marker.sh > new file mode 100644 > index 0000000..403cc56 > --- /dev/null > +++ b/git-equal-tree-marker.sh > @@ -0,0 +1,50 @@ > +#!/bin/sh > +# > +# Copyright (c) 2009 Bernhard R. Link > +# > +# Create a new commit making HEAD parent of the arguments, > +# which must be commits with the same tree. > + > +set -e > + > +USAGE='<head>...' > +LONG_USAGE='Make current HEAD parent of the given heads (which need to have the same tree).' > +SUBDIRECTORY_OK=Yes > +OPTIONS_SPEC= > +. git-sh-setup > +cd_to_toplevel > + > +# is there really no function for this? > +tree_of_commit() { > + git cat-file commit "$1" | grep '^tree ' | head -n 1 | sed -e 's/^tree //' > +} You mean there should be something really simple, such as: git rev-parse "$1"^{tree} Michael -- To unsubscribe from this list: 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