Hello,

you may have noticed I am currently trying to bring the 
mailmap file of git itself up to date. I noticed
some behavior, which I did not expect. Have a look yourself:

---
        # prepare test environment:
        mkdir testmailmap
        cd testmailmap/
        git init

        # do a commit:
        echo "asdf" > test1 
        git add test1
        git commit -a --author="A <a...@example.org>" -m "add test1"

        # commit with same name, but different email 
        # (different capitalization does the trick already, 
        # but here I am going to use a different mail)
        echo "asdf" > test2
        git add test2
        git commit -a --author="A <changed_em...@example.org>" -m "add test2"

        # how do we know it's the same person?
        git shortlog
        A (2):
                  add test1
                  add test2

        # reports as expected:
        git shortlog -sne
                  1  A <a...@example.org>
                  1  A <changed_em...@example.org>
                  
        # Adding the line to the mailmap should make life easy, so we know
        # it's the same person
        echo "A <a...@example.org> <changed_em...@example.org>" > .mailmap

        # Come on, I just wanted to have it reported as one person!
        git shortlog -sne
                 1  A <a...@example.org>
                 1  A <a...@example.org>
                 
        # So let's try another line in the mailmap file, (small 'a')
        echo "A <a...@example.org> <changed_em...@example.org>" > .mailmap

        # We're not there yet?
        git shortlog -sne
                 1  A <a...@example.org>
                 1  A <a...@example.org>

        # Now let's write it rather explicit: 
        # (essentially just write 2 lines into the mailmap file)
        cat << EOF > .mailmap
        A <a...@example.org> <changed_em...@example.org>
        A <a...@example.org> <a...@example.org>
        EOF
                 
        # works as expected now
        git shortlog -sne
                 2  A <a...@example.org>

        # works as expected now as well
        git shortlog      
        A (2):
                  add test1
                  add test2

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to