Tags Posts tagged with "svn"

svn

przez -
0 378
Apache

Ogłoszono wydanie Subversion 1.8.0, systemu kontroli wersji, który rozwijany jest przez Fundację Apache. Dodano nowe zachowanie dla przemieszczania, a także automatyczne wykrywanie dla łączonych reintegrowanych gałęzi. Pojawiły się nowe funkcje dziedziczenia własności oraz możliwość ustalania ustawień konfiguracyjnych repozytorium. Udoskonalono wydajność oraz dodano wiele nowych funkcji.

przez -
0 413
Git

Junio C Hamano ogłosił wydanie Git 1.8.0, wolnego systemu kontroli wersji. Został on stworzony przez Linusa Torvaldsa na potrzeby jądra Linux. Zaktualizowano interfejs graficzny. Kilka komend otrzymało nowe opcje: git cherry-pick, git difftool, git grep, git log, git rebase i the git daemon.

Credintial helpers otrzymał dostęp do kluczy szyfrujących na systemach Windows oraz do GNOME Keyring na Linuksie. Pojawiła się pierwsza wersja na system operacyjny HP NonStop, a git svn zaktualizowano do pracy z Subversion 1.7.

przez -
15 381
SVN

Tych którzy jeszcze nie przeszli na Gita może ucieszyć informacja, że został wydany został system kontroli wersji Subversion 1.7, który rozwijany jest przez Fundację Apacha. Jedną z ważniejszych zmian jest poprawienie wydajności całego systemu, zwłaszcza podczas pracy przez protokół HTTP. Przepisano od nowa podsystem zarządzania metadanymi, pojawiło się nowe narzędzie (svnrdump) do zdalnego wykonywania kopii repozytorium. Działa ono podobnie jak polecenie svnadmin dump, lecz repozytorium nie musi być lokalnym zasobem.

Usprawniono również działanie svn patch oraz svn relocate. Większość z nowości dostępna jest tylko dla serwera i klienta w wersji 1.7.x. Wraz z tym wydaniem zmieniona została licencja oprogramowania. Obecnie oprogramowanie wydawane jest na licencji Apache License Wersja 2.

Ponadto poprawiono kilka błędów.

Pełna lista zmian znajduje się w oficjalnym ogłoszeniu.

przez -
12 929
SVN

W środowisku, w którym pracuje wielu programistów, komentowanie kodu jest wręcz wymogiem. Ale jak wiadomo wielu twórców oprogramowania unika dodawania komentarzy, a tym bardziej komentowania commitów w systemie kontroli wersji. Ale jest na to sposób by wymusić dodawanie komentarzy do każdego commita.

Na serwerze gdzie jest usługa SVN w katalogu danego repozytorium znajduje się katalog hooks. Znajdziemy tam pliki *.tmpl o nazwach, które sugerują swoje działanie. Są to pliki szablonowe, z których możemy przygotować gotowe skrypty.

Takim skryptem będzie pre-commit. Jak sama nazwa wskazuje, wykona się on przed każdym poleceniem COMMIT, sprawdzi czy programista dodał komentarz i jeśli nie to zwrócić błąd w stronę klienta.

Na samym początku musimy stworzyć taki skrypt. Posłuży nam do tego szablon pre-commit.tmpl.

cp /var/svn/repozytorium/hooks/pre-commit.tmpl /var/svn/repozytorium/hooks/pre-commit
chmod +x /var/svn/repozytorium/hooks/pre-commit

W skopiowanym pliku powinniśmy zakomentować linię dodając # na jej początku:

#commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1

Jeżeli chcemy, aby został wysłany do użytkownika odpowiedni komunikat możemy cały skrypt zastąpić poniższym kodem:

REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/local/bin/svnlook

LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`
if [ "$LOGMSG" -lt 1 ]; then
        echo -e "Dodaj komentarz do swojego commita!" 1>&2
        exit 1
fi

# Check that the author of this commit has the rights to perform
# the commit on the files and directories being modified.
#commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1

# All checks passed, so allow the commit.
exit 0

Jeżeli wszystko dobrze wykonaliśmy, próba dodania commita bez komentarza zakończy się błędem:

Zatwierdzenie nie powiodło się (szczegóły poniżej):
svn: Commit blocked by pre-commit hook (exit code 1) with output:
Dodaj komentarz do swojego commita!

Natomiast jeżeli zobaczymy błąd Error output could not be translated from the native locale to UTF-8, należy sprawdzić czy w pliku pre-commit nie dodaliśmy jakiś znaków specjalnych, które powodują problem.

Polecane

Prasa, Czasopismo

1 904
Ukazało się Linux Magazine – numer 161. Lipcowe wydanie magazynu zawiera analizę tworzenia bardziej czytelnych wyrażeń regularnych z Simple Regex Language, instrukcje zabezpieczania i...