b'\n_START_ARTICLE_\nCVS\n_START_SECTION_\nFuncionamento\n_START_PARAGRAPH_\nCVS utiliza uma arquitetura cliente-servidor: um servidor armazena a(s) vers\xc3\xa3o(\xc3\xb5es) atuais do projeto e seu hist\xc3\xb3rico, e os clientes se conectam a esse servidor para obter uma c\xc3\xb3pia completa do projeto, trabalhar nessa c\xc3\xb3pia e ent\xc3\xa3o devolver suas modifica\xc3\xa7\xc3\xb5es. Tipicamente, cliente e servidor devem estar conectados por uma rede local de computadores, ou pela Internet, mas o cliente e o servidor podem estar na mesma m\xc3\xa1quina se a configura\xc3\xa7\xc3\xa3o do CVS for feita de maneira a dar acesso a vers\xc3\xb5es e hist\xc3\xb3rico do projeto apenas a usu\xc3\xa1rios locais. O servidor geralmente roda sistema ao estilo Unix, enquanto o cliente CVS pode rodar qualquer sistema operacional._NEWLINE_V\xc3\xa1rios clientes podem editar c\xc3\xb3pias do mesmo projeto de maneira concorrente. Quando eles confirmam suas altera\xc3\xa7\xc3\xb5es, o servidor tenta fazer uma fus\xc3\xa3o delas. Se isso n\xc3\xa3o for poss\xc3\xadvel, por exemplo porque mais de um cliente tentou executar altera\xc3\xa7\xc3\xb5es na mesma linha do documento, o servidor apenas executa a primeira altera\xc3\xa7\xc3\xa3o e informa ao respons\xc3\xa1vel pela segunda altera\xc3\xa7\xc3\xa3o que houve conflito, e que \xc3\xa9 necess\xc3\xa1rio uma interven\xc3\xa7\xc3\xa3o humana. Se a valida\xc3\xa7\xc3\xa3o da altera\xc3\xa7\xc3\xa3o for bem sucedida, o n\xc3\xbamero de vers\xc3\xa3o de cada cliente arquivo envolvido \xc3\xa9 incrementado, e o servidor CVS escreve uma linha de observa\xc3\xa7\xc3\xa3o (fornecida pelo usu\xc3\xa1rio), a data e o autor das altera\xc3\xa7\xc3\xb5es em seus arquivos de log._NEWLINE_Clientes podem comparar diferentes vers\xc3\xb5es de um arquivo, pedir um hist\xc3\xb3rico completo das altera\xc3\xa7\xc3\xb5es, ou baixar uma determinada vers\xc3\xa3o do projeto, ou de uma data espec\xc3\xadfica, n\xc3\xa3o necessariamente a vers\xc3\xa3o mais atual. Muitos projetos de c\xc3\xb3digo aberto permitem acesso para leitura an\xc3\xb4nimo, o que significa que qualquer pessoa pode baixar ou comparar vers\xc3\xb5es sem necessidade de autentica\xc3\xa7\xc3\xa3o; somente para salvar mudan\xc3\xa7as \xc3\xa9 necess\xc3\xa1rio informar a senha nesses casos._NEWLINE_Clientes tamb\xc3\xa9m podem usar o comando "update" para manter suas c\xc3\xb3pias locais atualizadas com a \xc3\xbaltima vers\xc3\xa3o do servidor. Isso elimina a necessidade de se fazer diversos downloads de todo o projeto._NEWLINE_O CVS tamb\xc3\xa9m pode manter diferentes "estados" do projeto. Por exemplo, uma vers\xc3\xa3o do software pode ser um desses estados, usado para corre\xc3\xa7\xc3\xa3o de bugs, enquanto outra vers\xc3\xa3o, que est\xc3\xa1 realmente sob desenvolvimento, sofrendo altera\xc3\xa7\xc3\xb5es e tendo novas funcionalidades implementadas, forma o outro estado._NEWLINE_O CVS usa compress\xc3\xa3o delta para armazenar de maneira eficiente diferentes vers\xc3\xb5es de um mesmo arquivo.'