Old algorithm: - printed IDs of identical patches with minus (-) sign; they should not be printed at all - did not print anything from the changes in the upstream Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxx> --- git-cherry.sh | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/git-cherry.sh b/git-cherry.sh index f0e8831..fdf3de7 100755 --- a/git-cherry.sh +++ b/git-cherry.sh @@ -74,7 +74,8 @@ do then if test -f "$patch/$2" then - sign=- + rm -rf "$patch/$2" + continue else sign=+ fi @@ -88,6 +89,29 @@ do esac fi done + +for c in $inup +do + set x `git-diff-tree -p $c | git-patch-id` + if test "$2" != "" + then + if test -f "$patch/$2" + then + sign=- + else + continue + fi + case "$verbose" in + t) + c=$(git-rev-list --pretty=oneline --max-count=1 $c) + esac + case "$O" in + '') O="$sign $c" ;; + *) O="$sign $c$LF$O" ;; + esac + fi +done + case "$O" in '') ;; *) echo "$O" ;; -- 1.4.1 - : 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