Hallo Thomas,

ich glaube nicht, dass es hilfreich ist, den commit automatisch zu verhindern.

Wenn fortwährend instabiler Code in den Trunk kommt, würde ich versuchen, das unterliegende "soziale" Problem lösen.
 

Wenn man etabliert, dass bei zerbrochenem Trunk alles andere stehen bleibt und alle das Problem beheben, lernen die Entwickler recht schnell, das zu vermeiden.

Du brauchst auf jeden Fall ein CI System wie Jenkins, dazu könnt Ihr Euch eine Lampe oder Sirene anschaffen, die den kaputten Trunk anzeigt. Es gibt nette DIY-Projekte  [1]  dafür, das ist eine gute Team Building Übung ;-)

Wenn  bei allen das Bedürfnis da ist, den Trunk stabil zu halten, helfen Code Review Tools, neben Gerrit fallen mir spontan phabricator [2], rhodecode [3] sowie die Pull Requests auf Github [4] ein. Mit letzteren habe ich in mehreren Teams gute Erfahrungen gemacht.

Da Du noch SVN benutzt, würde ich Dir sowieso empfehlen, auf ein DVCS wie Git oder Mercurial zu wechseln, das ist in der Benutzung flexibler und angenehmer als SVN, und viele Tools gibt es inzwischen auch gar nicht mehr für SVN. Git scheint mir derzeit der Quasi-Standard mit der umfangreicheren Tool-Unterstützung.

Grüße,

Bernhard

[1] https://duckduckgo.com/?q=build+status+notification+lamp
[2] http://phabricator.org
[3] http://rhodecode.org/
[4]
https://help.github.com/articles/using-pull-requests
Thomas Guettler
July 31, 2013 8:57
Hallo,

ich habe versucht eine deutsche Beschreibung für das Subject zu finden, konnte aber
keine passende Formulierung finden.

Vor ein paar Tagen habe ich eine Frage bei Stackoverflow gestellt, die ich gerne
auch hier besprechen würde:

http://stackoverflow.com/questions/17524869/force-stable-trunk-master-branch/17671955

Ich denke, ihr seit dem Englischen mächtig:

{{{
Our development departments grows and I want to force a stable master/trunk.

Up to now every developer can commit into the master/trunk. In future developers should commit into a staging area, and if all tests pass the code gets moved to the trunk automatically. If the test fails, the developer gets a mail with the failed tests.

We have several repositories: One for the core product, several plugins and a repository for every customer.

Up to now we run SVN and git, but switching all repos to git could be done, if necessary.

Which software could help us to get this done?

There a some articles on the web which explain how to use gerrit and jenkins to force a stable branch.

I am unsure if I need both, or if it is better to use something else.

Environment: We are 10 developers, and use python and django.

Question: Which tool can help me to force a stable master branch?
}}}

Gruß,
  Thomas

PS: Antworten bitte an die Liste, nicht nur an mich, danke!


--
Bernhard Bockelbrink
mobile: +49 (0) 177 72 13 550
orderbird AG - Wir beflügeln Gastfreundschaft! 
Ritterstraße 12-14, Aufg. 4
D-10969 Berlin, Germany
Gewinner Intergastra Innovationspreis 2012/2013
tel.: + 49 (0) 800 67 337 24
fax: + 49 (0) 321 214 681 89
www.orderbird.com

Registergericht: Amtsgericht Charlottenburg, HRB 13401
Vorstandsvorsitzender: Jakob Schreyer