Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Há várias diretrizes que projetos e editores devem seguir para dar suporte ao controle do código-fonte.
Guidelines
Seu projeto ou editor também deve fazer o seguinte para dar suporte ao controle do código-fonte:
| Area | Projeto | Editor | Detalhes |
|---|---|---|---|
| Cópias privadas de arquivos | X | O ambiente dá suporte a cópias privadas de arquivos. Ou seja, cada pessoa inserida no projeto tem sua própria cópia privada dos arquivos nesse projeto. | |
| Persistência ANSI/Unicode | X | X | Se você escrever o código de persistência, persista arquivos no formulário ANSI porque a maioria dos programas de controle do código-fonte atualmente não dá suporte ao Unicode. |
| Enumerar arquivos | X | O projeto deve conter uma lista específica de todos os arquivos dentro dele e deve ser capaz de enumerar a lista de arquivos usando o IVsSccProject2 ou GetProperty (VSH_PROPID_First_Child/Next_Sibling). O projeto também deve expor nomes de itens por meio de sua GetMkDocument implementação e suportar a busca por nome (incluindo arquivos especiais) por meio de sua IsDocumentInProject implementação. | |
| Formato do texto | X | X | Quando possível, os arquivos devem estar em formato de texto para dar suporte à mesclagem de diferentes versões. Os arquivos que não estão no formato de texto não podem ser mesclados com outras versões do arquivo posteriormente. O formato de texto preferencial é XML. |
| Baseado em referência | X | Os projetos baseados em referência são facilmente compatíveis com o controle do código-fonte. No entanto, projetos baseados em diretório também são compatíveis com o controle do código-fonte, desde que o projeto possa produzir uma lista de seus arquivos sob demanda, independentemente de esses arquivos existirem no disco. Ao abrir um projeto do controle do código-fonte, o arquivo de projeto é derrubado primeiro antes de qualquer um de seus arquivos. | |
| Manter objetos e propriedades em ordem previsível | X | X | Mantenha seus arquivos em uma ordem previsível, como ordem alfabética, para facilitar a mesclagem. |
| Recarregar | X | X | Quando um arquivo é alterado no disco, o editor deve ser capaz de recarregá-lo. Quando você participar do controle do código-fonte, o ambiente recarregará os dados para você chamando sua ReloadDocData implementação. O caso de recarregamento mais difícil é quando ocorre um check-out quando você chama IVsQueryEditQuerySave::QueryEditFiles e está processando informações. No entanto, seu código de recarregamento deve ser capaz de ser executado nessa situação. O ambiente recarrega automaticamente arquivos de projeto. No entanto, um projeto deve implementar IVsPersistHierarchyItem2 caso possua hierarquias aninhadas para dar suporte ao recarregamento de arquivos de projeto aninhados. |