In sostanza, un build sarebbe limitato a:
- Scopri,
- Compilazione (o più in generale, build, che include più attività, come l'impostazione di una configurazione corretta),
- Test delle unità,
mentre integrazione continua seguirà gli stessi tre passaggi, oltre a:
- Integrazione del progetto all'interno del sistema più grande,
- Test di integrazione,
- (Eventualmente test del sistema).
Consegna continua aggiungerebbe un ulteriore passaggio:
- Confezione della soluzione (in una forma di un file .msi, un pacchetto pip, qualunque cosa).
Infine, la distribuzione continua farà tutti e sei i passaggi e inoltre:
- La distribuzione effettiva della soluzione in produzione.
In pratica, per molti prodotti non esiste una stretta separazione tra build e integrazione continua . Ad esempio, la compilazione di TFS non è limitata ai primi tre passaggi. Può perfettamente essere configurato per fare l'effettiva integrazione, il packaging e la distribuzione stessa, rendendo la terminologia irrilevante in questo caso.
Jenkins è in effetti un concorrente diretto della parte di costruzione di TFS. Ha lo stesso scopo e funziona in modo simile.