Rewizje SVN w plikach
Po dłuższej przerwie wróciłem do korzystania z svn’a (przerwa wymuszona brakiem czasu) - przygotowuję się na rozszerzenie składu firmy, od porządków zacząć najlepiej. W międzyczasie przemyślałem system automatycznego updat’u aplikacji. System nie jest prosty, bo mam dość spore wymagania w tej kwestii. W najbliższym czasie powinien pojawić się odpowiedni wpis. Jednym z problemów jakie się pojawiły jest wersjonowanie plików - po co bawić się w numerowanie ręczne, md5 i inne problematyczne rozwiązania, skoro korzysta się z SVNa.
Dodałem do każdego pliku odpowiednie svn:keywords - Revision, ale ręcznie nie zmodyfikowałem (jeszcze) wszystkich plików - jest ich zbyt dużo, a zanim powstanie system update’ów (którego pisanie zajmie min. miesiąc - po godzinach) zdążę wszystko uzupełnić. Tylko.. gdzie uzupełniłem, a gdzie nie? Oto jest pytanie! Skrypt zna odpowiedź
Uruchamiamy z linii poleceń (jeśli występuje parametr, to musi być katalogiem) a na wyjściu otrzymujemy listę plików (katalogi są sprawdzane rekurencyjnie [DIR ]) z zaznaczeniem, czy posiadają Revision: (co będzie automatycznie zastąpione przez SVN) [ OK ], lub oznaczeniem, że nie posiadają [----].
Prosty i skuteczny sposób na upewnienie się, że pliki posiadają odpowiednie “stringi”. Można przemyśleć, czy nie sprawdzać w ten sposób innych rzeczy - nagłówków (GPL?), @package, @author? Istnieje dużo ciekawych pomysłów na wykorzystanie.

