Aqui está um exemplo com um projeto Flash, mas tenho certeza que muitos projetos são assim.
Suponha que eu crie uma imagem com o Photoshop. Em seguida, exporto esta imagem como um JPEG para integração no Flash. Compilei o fla como uma biblioteca de ativos, que é usada no meu projeto Flash Builder para produzir o swf final.
Então é assim:
psd => jpg -> fla => swc -> Flash Builder project => swf.
=> : produce
-> : is used in
O psd, fla e o Flash Builder Project são arquivos de origem: eles não são o resultado de algum processo.
O jpg e o swc são o que eu chamaria de arquivos "intermediários". Eles são o produto de um (ou mais) arquivo (s) de origem que são usados como entrada em outra ferramenta ou processo.
O swf é o resultado final.
Então, você manteria esses arquivos intermediários sob controle de versão? Como você lida com eles?