2012-01-10 13 views
6

Mam jenkins skonfigurować do budowy dowolnej gałęzi i połączyć go w mistrza. Mam też skrypty przed odebraniem, aby uniemożliwić programistom sprawdzenie w systemie głównym, chyba że jesteś użytkownikiem "hudson".hudson/jenkins ciągle buduje zły oddział w git zamiast dobrego

Działa świetnie na jednym z naszych repozytoriów, ale z drugiej, za każdym razem, gdy ktoś przesuwa nowy oddział zdalny, hudson buduje wstrzymaną gałąź nieobsługiwaną i zawiesza kompilację, więc każde nowe naciśnięcie oddziału zdalnego uruchamia natychmiastową kompilację (wywoływanie wywołań skryptów po odebraniu), ale potem próbuje zbudować tę złą gałąź zamiast tej, którą popchnął deweloper.

UWAGA: w dziennikach wygląda na to, że prawidłowo wykryła, że ​​dhiller-1 został ostatnio zepchnięty, ale następnie decyduje się zbudować dhiller-refactor, który nie jest kompletny, ale przechowywany w odległym repozytorium, ponieważ jest to duży refaktor, który wciąż jest w użyciu. postęp (i pchnął tylko do tworzenia kopii zapasowych)

logi ...

Started by user anonymous 
Checkout:workspace/C:\AAROOT\Jenkins2\jobs\toolbar\workspace - [email protected] 
Using strategy: Default 
Last Built Revision: Revision 597af7a5d808b28f492257f311af9171f03e6891 (origin/dhiller-1) 
Checkout:workspace/C:\AAROOT\Jenkins2\jobs\toolbar\workspace - [email protected] 
Fetching changes from 1 remote Git repository 
Fetching upstream changes from ssh://[email protected]/opt/toolbar 
Seen branch in repository origin/HEAD 
Seen branch in repository origin/dhiller-1 
Seen branch in repository origin/dhiller-2 
Seen branch in repository origin/dhiller-refactor 
Seen branch in repository origin/dhiller-test 
Seen branch in repository origin/master 
Commencing build of Revision 2c56d8645871ea2929c717e15038a5b79c0b43e1 (origin/dhiller-refactor) 
Merging Revision 2c56d8645871ea2929c717e15038a5b79c0b43e1 (origin/dhiller-refactor) onto master 
ERROR: Branch not suitable for integration as it does not merge cleanly 
Build did not succeed and the project is configured to only push after a successful build, so no pushing will occur. 
Finished: FAILURE 

Odpowiedz

3

dobrze, w końcu ustalone to tylko przez całkowite usunięcie że zdalnej gałęzi i utworzenie nowego kodu, który miał od tej złej branży po prostu używając kopii plików, więc tak, straciłem historię tego oddziału, ale naprawił problem ... to był duży ból i wydaje się teraz znowu działa.

0

Miałem ten sam problem. Najdziwniejsze było to, że Jenkins (git-plugin) emitowane wiadomości

ERROR: Branch not suitable for integration as it does not merge cleanly

, a ja nie sprawdził „Scalanie przed zbudowaniem” zestaw opcji. Patrząc na kod źródłowy git-plugin here, miał on jednak do czynienia z tą opcją. Włączenie tej opcji, zapisanie konfiguracji, wyłączenie opcji i zapisanie konfiguracji ponownie rozwiązało problem; nie próbuje już scalać.