Quando applicare (applicare) linting in un progetto software

3

Sto dirigendo un nuovo team di sviluppatori che lavorano a un progetto software che sfrutta l'integrazione continua (circleci) con una suite di unità busterjs / integrazione / test di accettazione. Il nostro progetto è stato scritto principalmente con coffeescript e cerco di utilizzare il coffeescript-linter per garantire che tutti coloro che lavorano con la nostra base di codice mantengano il codice coerente e il più organizzato possibile.

La mia domanda è: qualcuno ha qualche idea su quando / se / come imporre il linting? Devo integrare il linting nei miei test che vengono eseguiti da circleci prima della distribuzione?

Un altro pensiero che ho avuto è stato scrivere un semplice script di shell che combina git-push e l'utilità di sfilacciamento in un unico passaggio e quindi includerlo nel progetto & averlo usato da tutti.

Sono abbastanza nuovo nella gestione di team di programmatori, quindi il feedback di qualcun altro è molto apprezzato.

EDIT: Negli ultimi 3 secondi mi è venuto in mente che i git-hooks sono probabilmente perfetti per questo. Specificamente un git-hook on commit.

    
posta Casey Flynn 02.04.2013 - 19:41
fonte

2 risposte

7

Quando a) hai uno standard di codifica eb) hai configurato il linter in modo che sia coerente con lo standard di codifica, cioè quando inizi a imporre il linting.

Metti il linter sul server CI.

    
risposta data 02.04.2013 - 19:56
fonte
3

La domanda è: quanto è importante per te che i problemi rilevati da coffeescript-linter vengano risolti immediatamente.

Se non è accettabile avere il codice nel repository che viene contrassegnato dal linter, allora il linter dovrebbe essere eseguito come hook di commit in modo che possa bloccare il commit in caso di problemi.

Se non è auspicabile ma non è inaccettabile, eseguirò il linter come parte della suite di test (e si lamenta, consideralo un errore di test)

Se non è pratico eseguire il linter come test case, eseguirlo sul server CI su un programma separato (ad esempio, una volta al giorno o una volta alla settimana) e incoraggiare gli sviluppatori a utilizzare il linter quando hanno un commit particolarmente grande.

    
risposta data 02.04.2013 - 20:08
fonte