( sz | 2008. 03. 08., szo – 00:52 )

Ehm.

Legyen ez a hello.c az elso commitban:

#include <stdio.h>
int main()
{
        printf("Hello World!\n");

        return 0;
}

Amit aztán módosítsunk erre:

#include <stdio.h>
int main()
{
        int i;
        for (i = 0; i < 10; i++) {
                printf("Hello World!\n");
        }

        return 0;
}

Aztán lássuk, mikor ki mit csinált:

$ bzr blame hello.c 
1   sz@ | #include <stdio.h>
        | int main()
        | {
2   sz@ |   int i;
        |   for (i = 0; i < 10; i++) {
        |           printf("Hello World!\n");
        |   }
1   sz@ | 
        |   return 0;
        | }

Végülis igen, bár nem szabályos, de rá lehet erőltetni, hogy az a printf() hívás, vagy legalábbis az azt tartalmazó kódsor tényleg a második committal került be...
Node:

$ git blame -w hello.c
^6e2c44a (sz 2008-03-07 23:59:28 +0100  1) #include <stdio.h>
^6e2c44a (sz 2008-03-07 23:59:28 +0100  2) int main()
^6e2c44a (sz 2008-03-07 23:59:28 +0100  3) {
a045c282 (sz 2008-03-08 00:07:08 +0100  4)      int i;
a045c282 (sz 2008-03-08 00:07:08 +0100  5)      for (i = 0; i < 10; i++) {
^6e2c44a (sz 2008-03-07 23:59:28 +0100  6)              printf("Hello World!\n");
a045c282 (sz 2008-03-08 00:07:08 +0100  7)      }
a045c282 (sz 2008-03-08 00:07:08 +0100  8) 
^6e2c44a (sz 2008-03-07 23:59:28 +0100  9)      return 0;
^6e2c44a (sz 2008-03-07 23:59:28 +0100 10) }

Hoppáhoppá, ahogy az a nagykönyvben meg van írva, mert az a kód bizony az első committal került be.
bzr-t nem tudom, hogyan lehet rávenni arra, hogy az ilyet tisztességesen felismerje. Aztán ott van még a git stash meg pár egyéb apróság, aminek hirtelen nem találtam bzr megfelelőjét... Bár azt meg kell jegyeznem, hogy eddig nem töltöttem a bazaarral fél óránál többet.