I merged about a dozen small branches earlier this week and sent the batch to Linus, who pulled them upstream with da50ccc6a0f32ad29c1168837330a78e6e2e2923 I pulled Linus' tree and then went to compare which of my branches had made it upstream, and my topic branches "git.status" script (pasted below) said that none of them had! Looking at Linus' history, it seems that my merge is gone. Instead there is a series of patches that look like they've been cherry-picked -- same commit but different commit id. I run the top-of-tree version of git. Did something strange happen with git a few days ago in this department? I still had my merge in command history so I checked out an old branch and did the same merge using today's git (git version 1.5.6.rc2.26.g8c37) and gitk shows it as an octopus, as expected. clues? thanks, -Len --- #!/bin/bash # report on status of my ia64 GIT tree cd ~/src/acpi gb=$(tput setab 2) rb=$(tput setab 1) restore=$(tput setab 9) #if [ `git-rev-list release ^test | wc -c` -gt 0 ] if [ `git rev-list test..release | wc -c` -gt 0 ] then echo $rb Warning: commits in release that are not in test $restore git-whatchanged release ^test fi #for branch in `ls .git/refs/heads` for branch in `git show-ref --heads | sed 's|^.*/||'` do if [ $branch = linus -o $branch = test -o $branch = release ] then continue fi echo -n $gb ======= $branch ====== $restore " " status= for ref in test release linus do if [ `git-rev-list $branch ^$ref | wc -c` -gt 0 ] then status=$status${ref:0:1} fi done case $status in trl) echo $rb Need to pull into test $restore ;; rl) echo "In test" ;; l) echo "Waiting for linus" ;; "") echo $rb All done $restore ;; *) echo $rb "<$status>" $restore ;; esac # git-whatchanged $branch ^linus | git-shortlog | cat git log linus..$branch | git shortlog | cat done -- 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