Uwielbiam Subversion. Proste do ustawienia, szybkie, dużo fajowych narzędzi dla rozmaitych systemów operacyjnych. Niestety, nawet dobre narzędzie potrafi być zgwałcone przez nieodpowiednie używanie. Mogłem ignorować ludzi dodających binarne pliki (jeden z moich branchów ma binarkę Quake 3, nie pytajcie) ale to, co otrzymałem ostatnio jako poprawkę załamało mnie.
Niektóre edytory mają ciekawe podejście do białych znaków. Dodają entery, zamieniają tabulacje na spacje, zamieniają ostatni znak tabulacji na tabulator plus dwie spacje. Cuda, po prostu, cuda. Wystarczy, że ktoś doda (hm, ciekawe jak tę notkę wypozycjonuje słowo ‘doda‘ ;-) taką zamianę i cała procedura budowania patcha idzie do piachu. Diff z pakietu Subversion nie potrafi ignorować zmian białych znaków. To powoduje, że w wyniku porównania zaznaczone są absolutnie wszystkie linie. Każda, w której zmienił się enter i spacja. Kłopotliwe.
Mógłbym wymusić standaryzacje edytorów, ale moje pokłady charyzmy nie starczą by przekonać ludzi, że Vim jest ich edytorem.
Popatrzyłem w pomoc SVN-a:
--diff-cmd arg : use ARG as diff command -x [--extensions] arg : Default: '-u'. When Subversion is invoking an external diff program, ARG is simply passed along to the program. But when Subversion is using its default internal diff implementation, or when Subversion is displaying blame annotations, ARG could be any of the following:
Wspaniale. Przetestowałem to na swoim projekcie i uzyskałem wreszcie poprawne wyniki, dzięki którym mogłem przeanalizować zmiany naniesione przez panią programolog z pokoju obok.
Teraz wystarczy dodać tylko odpowiedni alias do pliku z konfiguracją powłoki i cieszyć się poprawnie sformatowanym diffem.
alias svndiff='svn diff --diff-cmd diff -x -wb '
« Zbuduj swój “Media Center”, czyli GeeXboX | Konsolidacja czy też pożeranie FOSS? »
Podobało się? dodaj kanał RSS do swojego czytnika.
Bronikowski.com © Emil Oppeln-Bronikowski <blog@bronikowski.com>
♥ (random bits of love) CoSTa's family page
January 25th, 2008 at 11:50 am
doda, doda, zrób mi loda
teraz to już masz pierwszą stronę gugla gwarantowaną ;)
a ten Quake 3… ciekawe :D
January 25th, 2008 at 11:54 am
@Yanoo: Strona ISP miała dział download. Ktoś zrobił svn add * i jakoś tak.
January 25th, 2008 at 11:57 am
ISP…
January 25th, 2008 at 12:55 pm
Ja trzymam tgzety ze zrodlami (m.in. php) w svn. wygodniej przy budowaniu pakietow.
January 25th, 2008 at 2:23 pm
A ja w SVN trzymam dokumenty wszelkiego rodzaju. Świetnie sprawdza się drań do backupów :).
January 25th, 2008 at 2:40 pm
@CoSTa wręcz genialnie. Też wszystkie firmowe trzymam. No i jak zapomnę czegoś, zawsze można czekałtnąć. :-)
January 25th, 2008 at 7:29 pm
Proszę się nie nabijać z lokalnych AjEsPi :P