10 dicas de StarTeam - Parte I

 

Este artigo contém 10 dicas de StarTeam para usuários iniciantes e intermediários. Veremos os mais variados assuntos, desde opções da IDE até opções para facilitar a operações de check-in e check-out. Usuários que estão iniciando com o StarTeam ou que possuem pouca experiência no mesmo verão aqui algumas dicas úteis para uso no dia-a-dia durante o gerenciamento do código fonte.

 

Nota. Todas as dicas são focadas no StarTeam 2005 R2, o qual acompanha o BDS 2006, porém, usuários de outras versões do StarTeam poderão aplicar as dicas aqui descritas sem problemas.

1) Alterando o caminho do Working Folder

Quando criamos um projeto no StarTeam obrigatoriamente devemos informar um caminho padrão para o Working Folder; isto é, para a pasta de trabalho (diretório) local, ou na rede, a qual o StarTeam utilizará para realizar o controle de versão dos arquivos. Cada usuário do StarTeam, entretanto, pode ter seu Working Folder em um diretório diferente do padrão configurado na criação do projeto.

Para alterar o caminho do Working Folder para o seu usuário dentro do projeto ativo (aberto) no StarTeam Client selecione a opção View|Properties a partir do menu principal. Ao abrir a janela View Properties selecione a opção Alternate dentro da seção Working folder e entre com o novo caminho para o Working Folder (Figura 1).

 

img 

Figura 1. Alterando o caminho do Working Folder da view do projeto aberto no StarTeam Client.

 

Importante. A opção Alternate afeta apenas o usuário corrente, logado no projeto do StarTeam; porém, qualquer alteração na opção Default afetará todos os usuários com direito de acesso ao projeto em questão.

 

2) Aplicando filtros para arquivos locais

O StarTeam possibilita adicionarmos filtros para serem aplicados aos arquivos locais da máquina, cuja aqueles ainda não estão sob o gerenciamento do StarTeam; isto é, aos arquivos que possuem o status definido como Not in View dentro do StarTeam Client. Este filtro é bastante útil para que possamos realizar o filtro dentro da ferramenta dos arquivos que não há necessidade de serem versionados, como, por exemplo, arquivos temporários, dcu’s do Delphi, executáveis, entre outros.

Este filtro é realizado a nível de pastas do projeto/view podendo ser expandido para todas as pastas abaixo da pasta configurada. Para aplicar um filtro nos arquivos locais da máquina selecione uma pasta do projeto, por exemplo a root folder, e através do menu de contexto execute a opção Properties. Ao abrir a janela Folder Properties selecione a aba Exclude.

Através da seção Files to be excluded podemos definir o escopo o qual será aplicado o filtro, isto é, a pasta corrente e a todas as suas pastas filhas (Inherit and use local exclude lists), apenas a pasta corrente (Use local exclude list) ou sem filtro para pasta corrente (No exclude list). Para aplicar um filtro na pasta corrente e em todas as suas pastas filhas, selecione a opção Inherit and use local exclude lists e entre com as extensões a serem filtradas no campo Local exclude list (Figura 2).

 

img 

Figura 2. Aplicando filtros aos arquivos locais (status Not in View).

Na figura acima aplicamos um filtro no root folder (e seus folders filhos) para que arquivos com extensão .exe, .dcu e .~* não apareçam no painel superior do StarTeam Client.

 

Obs. Este filtro funciona apenas em arquivos definidos com o status Not in View; uma vez adicionado ao repositório do StarTeam (Add Files) o filtro é ignorado e o arquivo aparece na lista.

 

3) Evitando o desenvolvimento paralelo

O StarTeam permite que os desenvolvedores trabalhem no formato  de desenvolvimento paralelo ou serial; isto é, no caso do desenvolvimento em paralelo um arquivo pode estar sendo modificado ao mesmo tempo por 2 ou mais desenvolvedores. Nestes casos utiliza-se procedimentos de merge para atualizar o arquivo no repositório do StarTeam.

No cenário de desenvolvimento serial cada arquivo é locado pelo desenvolvedor antes de ser alterado evitando assim que outros desenvolvedores alterem e atualizem o arquivo no repositório. O StarTeam Client possui algumas opções a nível de Projeto e Usuário que podem auxiliar os desenvolvedores a seguir o modelo serial evitando assim operações de merge.

Após criar um projeto no StarTeam Client selecione a opção Project|Properties a partir do menu principal. Ao abrir a janela Project Properties do projeto ativo selecione a aba Options. Marque as opções “Require exclusive lock when files are checked in” e “Mark unlocked working files read-only” como mostra a Figura 3.

 

img 

Figura 3. Marcando opções de projeto para evitar o desenvolvimento em paralelo.

Marcando estas duas opções a nível de projeto os desenvolvedores só conseguirão realizar operações de check-in de arquivos configurados com lock exclusivo e, arquivos não locados ficarão configurados como somente leitura dentro do working folder do projeto.

Cada usuário pode ainda configurar algumas opções disponíveis na janela Personal Options para ajudar a evitar que um mesmo arquivo seja alterado por dois ou mais desenvolvedores ao mesmo tempo. Para acessar a janela Personal Options selecione a opção Tools|Personal Options disponível no menu principal do StarTeam Client.

Dentro da janela entre na aba File. Dentro da seção Locking selecione as opções “Exclusive lock files on check-out” e “Clear file locks on check-in” (Figura 4).

 

img 

Figura 4. Definindo o valor padrão da opção de lock para as operações de check-in e check-out.

4) Obrigar a entrada de comentários em operações de check-in

Quando o usuário do StarTeam realiza uma operação de check-in ele adiciona uma nova versão (revisão) do arquivo dentro do repositório. Normalmente está operação é realizada após uma atividade ou tarefa designada ao usuário ter sido completada.

O StarTeam permite configurar o campo Comment da janela de Check In para obrigar o usuário a entrar com um comentário sobre a nova versão que está sendo colocada do arquivo no repositório. Definindo este campo como obrigatório forçamos para que seja digitada alguma informação a qual explica ou detalha a operação de check in.

Para realizar tal configuração acesse a opção Project|Properties disponível no menu principal do StarTeam Client. Dentro da janela Project Properties marque a opção “Require revision comment when files are check in”.

5) Utilizando ferramentas alternativas de comparação e merge

Por padrão quando instalamos o StarTeam Client instalamos junto as ferramentas Visual Diff e Visual Merge as quais permitem realizarmos comparações entre arquivos texto e operações de merge. Hoje existem no mercado diversas ferramentas que realizam essas operações, gratuitas e pagas. As ferramentas que acompanham o StarTeam são genéricas, isto é, não focam nenhum tipo de arquivo específico.

Caso você trabalhe com projetos Delphi, por exemplo, você pode estar configurando o seu StarTeam Client para utilizar ferramentas de comparação e merge focadas em arquivos fontes Delphi. Para configurar ferramentas alternativas para o seu usuário do StarTeam acesse a opção Tools|Personal Options a partir do menu principal para abrir a janela Personal Options. Acesse a aba File e clique no botão Alternate Applications para realizar a configuração das ferramentas (Figura 5).

 

img 

Figura 5. Definindo aplicações alternativas para o usuário logado.

Na figura acima alteramos o aplicativo de edição de arquivos, o qual, por padrão é o bloco de notas do Windows, para utilizar o Word Pad. Através da opção Comparison Utility configuramos o StarTeam Client para deixar de utilizar o Visual Diff e passar a utilizar o WinMerge para realizar operações de comparação de conteúdo de arquivos texto.

No campo Options você deve passar os parâmetros necessários para que o aplicativo selecionado realize a operação em questão.

 

Dica. Pressione a tecla F1 (Ajuda) no campo Options para obter informações sobre a passagem de parâmetros.

 

Está configuração afeta apenas o usuário corrente logado no StarTeam Client possibilitando assim que cada usuário configure suas próprias ferramentas de comparação, merge e visualização de arquivos.

 

Continua...

Leia também