Um fluxo é um objeto de repositório que inclui um ou mais componentes. Um componente é uma coleta de artefatos relacionados, como um plug-in do Eclipse ou um grupo de documentos que compreende o conteúdo do Web site.
Os artefatos sob o controle de origem são agrupados em componentes. Qualquer grupo de arquivos e pastas que compartilha uma raiz comum pode ser um componente. Um fluxo é uma coleta de um ou mais componentes.
Os fluxos são similares às ramificações encontradas nos sistemas de gerenciamento de controle de origem, mas possuem uma quantidade de capacidades adicionais. Qualquer componente em um repositório pode ser incluído em zero ou mais fluxos. Um fluxo pode incluir no máximo uma versão de qualquer componente. Utilizando múltiplos fluxos, uma organização de desenvolvimento pode trabalhar em projetos que utilizam diferentes versões dos mesmos componentes. Por exemplo, um fluxo dedicado para o desenvolvimento de um novo release de software poderia incluir a versão mais recente de componentes do release, enquanto que outro fluxo dedicado à manutenção de uma versão anterior do release desse software poderia inicialmente incluir as versões de componente que eram parte desse release.
Os fluxos e componentes são objetos de repositórios. Como eles catalogam conteúdos da área de trabalho, você deve criar uma área de trabalho de repositório antes de poder criar um componente ou fluxo. Depois de criada uma área de trabalho de repositório e incluído projetos nela (efetuando o registro de entrada deles), é possível organizar os projetos em componentes.
Os fluxos e componentes não são definidos em uma área de trabalho local. Os objetos de arquivos e pastas em cada componente em uma área de trabalho de repositório são carregados no sistema de arquivos local como arquivos e pastas. Somente uma versão de cada arquivo ou pasta (a versão selecionada pela linha de base ou pelo fluxo que você especificou na criação da área de trabalho) é carregada.
Uma área de trabalho local pode carregar mais de uma versão de um componente (isso pode acontecer se a área de trabalho local incluir o conteúdo de mais de uma área de trabalho de repositório), mas somente uma versão de um componente pode estar presente em uma área de trabalho local por vez. O carregamento do componente a partir de uma área de trabalho de repositório sobrescreve o conteúdo que foi carregado de uma área de trabalho de repositório diferente, depois de você ter sido solicitado a autorizar a operação de sobrescrever.