Você pode ter um certo estilo de desenvolvimento: você faz checkout, codifica, compila, verifica, amaldiçoa, altera, compila, torce, confirma. Você só confirma o código de trabalho, talvez até de maneira menos granular, como no final do dia de trabalho ou quando um recurso é concluído. Você verifica suas dependências sempre que importa as bibliotecas de API.
Quando você começa a codificar junto com outras pessoas e quando há dependências mútuas, faz sentido adotar a integração contínua. Simplesmente porque você não pode conhecer o impacto das alterações nas pessoas que dependem do seu código e não recebe sinal toda vez que precisar atualizar suas importações.
Portanto, quando um de vocês faz uma alteração, os dois projetos devem ser construídos e testados juntos, ou seja, executados na API um do outro, construídos e testados com a nova biblioteca etc. Esses testes, seu código e o de outra pessoa, são chamados de testes de integração.
Por que contínuo? Porque é mais fácil delegar a coordenação da integração a um sistema que testa uma compilação limpa sempre que houver uma alteração em qualquer base de código do que organizar tudo isso para um humano. O sistema é capaz de escalar.