18 de janeiro de 2013

Artigo Tortoise SVN (Instalação e configuração) - Parte 3



Dando continuidade no artigo falando sobre o TortoiseSVN, nesta parte vou comentar sobre algumas das diversas funcionalidades disponibilizadas pelo aplicativo. Veja na imagem abaixo as funcionalidades:


Neste artigo separei algumas que na minha opinião são fundamentais para comentar.

Primeiro: “Navegador de repositório”.

Selecionando esta função, será aberta uma janela exibindo os arquivos enviados e disponibilizados dentro do repositório. Ela será acessada pela pasta local de trabalho, ou seja, na pasta “Meus_Codigos”. Veja na imagem abaixo a mencionada janela.


Observe que dentro desta janela do navegador, será possível realizar alterações nos arquivos. Para isto basta clicar com o botão direito do mouse sobre a mesma que será exibido a seguinte janela:


Segunda: “Obter Bloqueio”. Esta é uma das que para mim, é da maior importância, principalmente em se tratando de vários desenvolvedores trabalhando no mesmo repositório, pois através desta, o usuário terá como informar para os outros desenvolvedores, que o arquivo esta em uso por ele próprio, impedindo desta forma de acontecer de dois desenvolvedores realizarem alterações ao mesmo tempo, e o último apagar as rotinas adicionadas pelos primeiros. Veja abaixo a janela de exemplo da funcionalidade:

Observe que em quase todas as janelas do tortoiseSVN, tem um campo para digitação de mensagens. Estas mensagens serão muito importantes para que os outros usuários tenham informações detalhadas do que esta sendo realizado no processo. Sendo assim, minha indicação é que quem for fazer uso do aplicativo, não se esqueça de sempre informar neste campo o porquê do ocorrido processo.

Terceira: “Ramificar, Alternar e Combinar”. Estas opções poderão ser usadas para realizar uma espécie de cópia (ramificação) de um determinado código. Vamos supor que precise realizar alguns testes e quer evitar que seja enviado ao repositório os possíveis códigos passível de gerar erro de compilação do projeto. Neste caso poderá criar uma cópia ramificada para evitar o acontecido.

As outras opções serão usadas para alternar e retornar (combinar) os códigos da copia do repositório com a ramificada.


------------------------------------------------------------------------------------------------------------

Fonte: http://www.devmedia.com.br/funcionalidades-artigo-tutorial-tortoisesvn-parte-3/21074

17 de janeiro de 2013

Artigo Tortoise SVN (Instalação e configuração) - Parte 2



No artigo anterior nos criamos a pasta de repositório e criamos também uma pasta onde nos vamos trabalhar os códigos. Neste artigo vou demonstrar como adicionarmos os projetos criados em nosso micro neste repositório, para que o mesmo fique disponível para todos os outros que porventura venham precisar acessar este projeto.
Primeiramente vamos entender os ícones exibidos pelo tortoiseSVN.

Quando a pasta local é apresentada desta forma indicada acima, o tortoiseSVN esta indicando a pasta esta atualizada.
Quando exibido da forma acima, indica que a pasta do repositório esta com arquivos mais recentes do que a da pasta de trabalho.
O ícone ficará desta forma, quando o arquivo local da pasta de trabalho, estiver marcado para ser enviar para o repositório.
Indica que o arquivo esta em conflito.

Sabendo disso, agora vamos adicionar um projeto criado ou criar um novo projeto para enviarmos para o repositório. Neste exemplo vou criar um pequeno projeto em delphi apenas para ter os arquivos que iremos usar.
Depois de adicionado os arquivos na pasta, os mesmos ainda não foram para o repositório e não farão diferença alguma nos respectivos ícones. Então agora vamos selecionar todos que desejamos enviar para o repositório e clicar com o botão direito do mouse sobre eles e na sequencia selecionamos a opção “TortoiseSVN->Adicionar”.


Observe que ao clicar nesta opção, nos ícones selecionados irá aparecer o sinal de positivo em azul, indicando que na próxima vez que submetermos a atualização, estes irão para o repositório. E é o que faremos na sequencia.


Retroceda na raiz da pasta, onde foram adicionados os arquivos do projeto “D:\programa”, e selecione a clicando com o botão direito do mouse sobre a pasta “Meus_Codigos”, a opção “SVN Submeter”.


Será exibida a seguinte janela, indicando as alterações que estão pendentes.


Confirmado todas as alterações, basta clicar em ok e aguardar o termino do processamento.


Com isso concluímos o envio do projeto para o repositório e o mesmo estará disponível para todos os outros que necessitarem acessar o mesmo e que possuírem o acesso. E todas as atualizações que forem disponibilizadas por você, bastará realizar a atualização através do próprio tortoiseSVN, que estas ficarão a disposição de todos.
Devo apenas reforçar que toda e qualquer alteração nos arquivo, inclusive uma possível renomeação do mesmo, deverá ser realizada através do TortoiseSVN, evitando assim problemas.
Na próxima parte do artigo, vamos conhecer com maiores detalhes, as opções disponibilizadas pelo aplicativo para realização de diferentes tarefas.

-----------------------------------------------------------------------------------------------------------------


Fonte: http://www.devmedia.com.br/enviando-arquivos-para-o-repositorio-artigo-tutorial-tortoisesvn-parte-2/20980

16 de janeiro de 2013

Artigo Tortoise SVN (Instalação e configuração) - Parte 1

Neste artigo vamos conhecer um pouco sobre uma excelente ferramenta chamada TortoiseSVN. Esta ferramenta tem a dentre outras, à finalidade de facilitar o compartilhamento de arquivos. Tomemos como exemplo uma empresa de software que tem diversos programadores, e estes tenham códigos fontes em comum, ou seja, que todos usam. A utilização deste aplicativo facilitaria o controle das alterações tendo em vista que a origem dos dados seriam a mesma.
Existem outros aplicativos que fazem esta tarefa. Por exemplo, o Microsoft visual SourceSafe, porém no meu ponto de vista, o tortoiseSVN é de mais simples manuseio.
Sem mais delongas vamos aos trabalhos.
Primeiro faça o download do aplicativo através do link: http://tortoisesvn.net/downloads.html
Observe que tem as opções para 32 e 64-Bit, escolha a que se adapta ao seu sistema operacional.


Mais abaixo neste mesmo site você encontrará as opções de pacotes para adicionar linguagens ao aplicativo.

Realize a instalação do aplicativo que é bem simples, e logo após, reinicie o sistema operacional.
Agora já com o TortoiseSVN devidamente instalado em seu sistema, vamos iniciar a configuração.
Primeiro crie uma pasta que será usada para armazenarmos os códigos que serão compartilhados. No caso usarei como exemplo a pasta “D:\Servidor\Codigos_Fontes”. Use em seu processo o nome que lhe for mais conveniente.
Depois de criada a pasta, clique com o botão direito do mouse sobre a pasta e observe que além das opções normais do sistema, será exibido as opções do TortoiseSVN.


Selecione a opção “Criar repositório aqui”, e na sequencia será apresentada a mensagem de confirmação da criação do repositório. 
Acesse a pasta e veja a estrutura de arquivo que foi criada. Esta deverá estar conforme a figura abaixo:


É muito importante lembrar que esta pasta não deverá em momento algum ser manuseada através do Explorer do Windows, devendo apenas se usadas as opções disponibilizadas pelo TortoiseSVN. Observe que a mesma, após a criação do repositório, já esta marcada como apenas leitura. Eu particularmente indico a marca-la como oculta também.
Agora neste próximo passo, vamos criar a pasta onde serão trabalhados os arquivos (códigos do projeto). Esta pasta estará ligada à pasta do repositório, e a partir dela iremos adicionar alterar e excluir.
Para ser mais específico, o repositório é onde ficarão todos os códigos dos projetos, e será como um servidor. Neste caso vamos imaginar que sou um programador de uma empresa e quero criar um novo projeto em meu micro e compartilhar os códigos com outros programadores. Neste caso vou criar este projeto dentro desta pasta que esta ligada ao repositório e enviar ao mesmo via o TortoiseSVN.
Vamos lá:
Crie uma pasta conforme achar melhor. No exemplo usarei a pasta “D:\Programas\Meus_Codigos”.
Agora vamos fazer a ligação entre esta pasta e a pasta do repositório. Para isso clique com o botão da direita do mouse sobre a pasta criada e selecione a opção “SVN Obter”, conforme mostrado na imagem abaixo:


Após clicar na opção, aparecerá a seguinte tela:

Na opção “URL do repositório” informa o caminho para a pasta que criamos como repositório, precedido de file:///, conforme indicado na imagem acima, e na sequência clique em OK, não havendo necessidade alguma de mexer em qualquer outra configuração.
Note que após clicar no OK, aparecerá outra janela onde se caso houvesse algum código no repositório, automaticamente já seriam copiados ou atualizados nesta pasta local.

Clique em OK para fechar esta janela.

Observação: Neste exemplo estou usando um único micro como repositório e local. Mas em caso de rede, basta informar o caminho da rede na indicação do “URL do repositório”.



-----------------------------------------------------------------------------------------------------------------

Fonte: http://www.devmedia.com.br/enviando-arquivos-para-o-repositorio-artigo-tutorial-tortoisesvn-parte-1/20980

15 de janeiro de 2013

Tortoise SVN


Tortoise SVN é um programa desenvolvido com o intuito de servir como ferramenta para o controle de versões, utilizando-se do subversion.



Abaixo, algumas características do tortoise:

Interface integrada

TortoiseSVN integra-se perfeitamente ao shell do Windows (ou seja, o Explorer). Isto significa que você pode continuar trabalhando com as ferramentas com as quais você já está familiarizado. E você não tem que mudar para uma aplicação diferente cada vez que precisar das funções de controle de versão.
E você não está limitado a usar o Windows Explorer; os menus de contexto do TortoiseSVN funcionam em muitos outros gerenciadores de arquivos, e também na caixa de diálogo Arquivo/Abrir que é comum na maioria dos aplicativos padrão Windows. Você deve, entretanto, ter em mente que o TortoiseSVN é intencionalmente desenvolvido como uma extensão para o Windows Explorer. Assim, é possível que em outras aplicações, a integração não seja tão completa e, por exemplo, as sobreposições de ícones podem não ser exibidas.

Sobreposição dos ícones

A situação de cada arquivo e diretório controlado é indicado por uma pequena sobreposição de ícones. O que permite a você ver rapidamente qual é a situação da sua cópia de trabalho.

Interface Gráfica de Usuário

Quando você lista as alterações em um arquivo ou pasta, você pode clicar em uma revisão para ver os comentários para aquela submissão. Você também pode ver uma lista de arquivos alterados - basta clicar duas vezes em um arquivo para ver exatamente o que mudou.
A caixa de diálogo de submissões lista todos os itens que serão incluídos em uma submissão, e cada item tem uma caixa de seleção para que você possa escolher os itens que você deseja incluir. Arquivos sem versão também podem ser listados, no caso de você ter esquecido de adicionar aquele novo arquivo.

Fácil acesso aos comandos do Subversion

Todos os comandos do Subversion estão disponíveis nos menus do explorer. TortoiseSVN adiciona seu próprio submenu.
Uma vez que TortoiseSVN é um aplicativo cliente do Subversion, também  possui algumas das funcionalidades do Subversion, como as demonstradas abaixo
Controle de diretório

CVS somente mantém o histórico de alterações de arquivos individuais, mas Subversion usa um controle virtual de sistema de arquivos que mantém o histórico de toda a estrutura de diretório ao longo do tempo. Arquivos e diretórios são controlados. E como resultado, temos verdadeiros comandos para mover e copiar arquivos e diretórios.

Submissão atômica

Cada submissão é enviada completamente para o repositório, ou não é enviado nada. Isto permite aos desenvolvedores construir e submeter as alterações em partes coesas.

Metadados controlados

Cada arquivo e diretório possui um conjunto de propriedades invisíveis. Você pode inventar e gravar qualquer conjunto de chave/valor que desejar. Propriedades são controladas ao longo do tempo, exatamente como o conteúdo dos arquivos.

Escolha das camadas da rede

Subversion tem uma noção abstrata de acesso ao repositório, tornando fácil para as pessoas desenvolverem novos mecanismos de rede. O servidor de rede avançado do Subversion é um módulo para o servidor web Apache, do qual expõe uma variante do HTTP chamada WebDAV/DeltaV. Isto dá ao Subversion uma grande vantagem em estabilidade e interoperabilidade, e provê várias funcionalidades chave de graça: autenticação, autorização, compressão, e navegação no repositório, por exemplo. Uma característica menor, um processo servidor autônomo do Subversion também está disponível. Este servidor exterioriza um protocolo específico que pode ser facilmente encapsulado sobre o protocolo ssh.

Manipulação consiste de dados

Subversion apresenta as diferenças de arquivos usando um algoritmo de comparação binária, que funciona igualmente para arquivos texto (compreensíveis) e binários (ilegíveis). Ambos os tipos de arquivos são gravados compactados da mesma forma no repositório, e as diferenças são transmitidas em ambas as direções através da rede.

Ramificação e Rotulação eficiente

Os recursos necessários para ramificar e rotular não é proporcional ao tamanho do projeto. Subversion cria ramos e rótulos simplesmente copiando o projeto, usando um mecanismo parecido ao hard-link. Deste modo estas operações são realizadas rapidamente sem variação de tempo, e consomem muito pouco espaço no repositório.

7 de janeiro de 2013

Sistemas de controle de versão

Sistemas de controle de versão

Sistemas de controle de versão se baseiam na ideia de facilitar o controle de documentos, sejam códigos fontes de sistemas ou ou outro tipo de documentação aplicável.

Abaixo um trecho retirado da revista Engenharia de Software, nº 49


Revista Engenharia de Software Magazine 49



"Sistemas de controle de versões são ferramentas de apoio aos desenvolvedores cuja principal função é controlar as modificações realizadas em um arquivo de projeto. Ainda possuem um mecanismo automatizado para identificar e controlar as modificações realizadas nos arquivos de um projeto ao longo do tempo, garantindo integridade e rastreabilidade das modificações. O controle de versões é visto como uma extensão natural do processo de desenvolvimento, permitindo que se possam realizar modificações paralelas e de forma coerente e padronizada, especialmente se tratando de equipes geograficamente dispersas.
 

O repositório é o componente principal do sistema de controle de versões. É o seu núcleo, composto por uma sequência de revisões armazenadas ao longo do tempo. Em geral, o usuário só interage diretamente com o repositório durante operações de leitura. A escrita no repositório é realizada por intermédio de outro componente denominada cópia de trabalho."

É interessante notar no trecho acima que, apesar do controle de versionamento ser extensamente utilizado na área de desenvolvimento de software, o mesmo também é utilizado para versionar outros tipos de documentos e arquivos em geral, como imagens e conteúdo multimídia.