Pergunta

Estou usando o Visual Source Safe 6.0D (requisito de trabalho) e tenho tentado reunir um pequeno script de shell para me permitir remover facilmente uma árvore de origem ou me avisar se eu tiver arquivos verificados para que eu possa fazer Claro que não excluo acidentalmente o trabalho. Existe alguma maneira de saber se os arquivos são verificados além de verificar o bit somente leitura nos próprios arquivos?

  1. O VSS não parece estar escrevendo nenhum arquivo (tirei um instantâneo do DIR antes e depois de verificar um arquivo e não houve diferença nos arquivos listados)
  2. Não consigo encontrar nada ao pesquisar no Google.
  3. Também verifiquei o vssver.scc para diferenças e não encontrei nada.

Lembre -se de que verificar arquivos escritas não é a pior coisa do mundo, mas parece que o VSS faz vários arquivos na árvore de origem ( *.ncb, *.scc, *.sln) escritos sem que eu tenha verificado nada. Posso simplesmente excluir os arquivos, mas estou tentando encontrar uma solução um pouco mais elegante.

Foi útil?

Solução

Talvez a técnica mais robusta seja perguntar a Fonterafera o que é verificado e/ou se arquivos de interesse individuais são verificados. Enquanto percebo que não é óbvio como fazer isso em um pequeno script de shell, eu defenderia o uso de PowerShell por esta.

Fonterafe expõe um Modelo de objeto de automação ole (também conhecido como modelo de objeto COM) e PowerShell pode conversar com objetos COM. Se você não está familiarizado com essas coisas, é muito para aprender, mas em última análise vale a pena.

Como alternativa, se o PowerShell for muito estranho, o VBScript também pode ser usado para controlar objetos COM.

Outras dicas

Você pode usar o COM para verificar se um arquivo foi verificado. Dê uma olhada no Ivssitem.isCheckedout propriedade. Para mais informações sobre o uso do VSS através do COM, consulte:

http://msdn.microsoft.com/en-us/library/4d44xhsd%28vs.80%29.aspx

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top