2015-07-29 13 views
7

Próbuję odtworzyć funkcję bramkowanych bramek w Visual Studio + VSO + Git.Replikacja funkcji bramkowanego zameldowania w programie Visual Studio + VSO + Git

Właściwie chciałbym uruchomić testy jednostek, zanim kod zostanie zatwierdzony do lokalnego repo lub przesunięty do zdalnego.

Jednak w obliczu problemu - w systemie VSO + GIT nie ma funkcji odprawy granicznej.

Próbowałem skonfigurować git hooks - pre-commit hook zadziała dla mnie - ale dostawca Visual Studio GIT nie obsługuje haków Git! Jest to spowodowane libgit2 -it jest używany w Visual Studio i nie obsługuje hooków :(

Moje pytanie brzmi: jak mogę uruchomić testy NUnit automatycznie przed zatwierdzeniem w Visual Studio 2013 + VSO + Git i nie zezwalam zły kod dostać się do mojego repo?

Dzięki!

Odpowiedz

4

Bramkowany checkin lub jego odpowiednik został już dodany do VSO. Jeśli przejdziesz do właściwości repozytorium Git w Administracji, po wybraniu oddziału powinna pojawić się dodatkowa karta ustawień.

Zaznacz to pole, aby włączyć kompilację przed scaleniem dla gałęzi MASTER i wybierz kompilację, której chcesz użyć do sprawdzenia poprawności.

https://www.visualstudio.com/en-us/news/2015-may-15-vso.aspx

Deweloperzy następnie utworzyć żądanie ściągania do opanowania i przejść przez bramę, aby dostać się.

+1

Możesz dostać coś blisko bramkowanych checkin, ale to nie jest parytet funkcji. Wygląda na to, że jeszcze nie istnieje dla VSO. –

+1

W jaki sposób wykonuje się polecenia ściągania zdalnie, takie jak uruchamianie testów jednostkowych przed zatwierdzeniem? –

0

najlepszym sposobem na to jest chyba użyć pull zgłoszeń funkcji i scalić tylko oddziały gdzie przejdzie testy jednostkowe. Możesz być tylko w stanie połączyć je z powodzeniem buduje

Inną możliwością jest użycie skryptu takiego jak git-build, który pomaga uruchomić polecenie (build i t est) lokalnie przed naciśnięciem ... Zobacz here for explaination i here for a more recent script (przepraszam za francuski ...)

+0

Dzięki! Postaram się zaimplementować rozwiązanie git-build, aby uruchomić testy, ponieważ nasze testy przebiegają dość szybko. Niestety to rozwiązanie będzie wymagało od programistów używania konsoli do przesyłania danych do repozytorium (git build) zamiast korzystania z natywnego GUI dostawcy VS Git. Próbowałem znaleźć "przezroczyste" rozwiązanie, które mogłoby pozwolić na używanie natywnego interfejsu VS, ale jak widzę, VS nie zapewnia żadnej możliwości włączenia niestandardowego skryptu w procesie zatwierdzania/wysyłania. –

Powiązane problemy