Responsabilidade social
Por: Jorbson Silva • 23/10/2016 • Tese • 1.131 Palavras (5 Páginas) • 192 Visualizações
Uma introdução as ferramentas de apoio de Controle de Versão – Bitbucket e SourceTree
Profa Claudete Moscardini
Controlar uma versão de um documento ou software é bastante importante para se ter um histórico de edição de todos os arquivos de um projeto, indicando quem realizou a alteração, data da alteração, quais foram os pontos alterados e o motivo desta alteração.
Para a utilização de um software controlar de versão é importante entender alguns conceitos: commit, merge, branch, head, e outros.
Segundo o site Mauda, tem-se o seguinte conceito:
[pic 1]
Você tem um Head que se inicia na letra A da árvore, é o ramo principal, e na nossa arvore acima segue (A-B-C-E-F-G), a partir dai, os desenvolvedores fazem upload do código e a cada mudança eles fazem commit, surgindo ai uma nova versão, como a letra B, C e assim sucessivamente. Uma vez, que vários desenvolvedores poderão pegar o mesmo programa e trabalhar localmente no código, surge a ideia do Branch (ramo secundário), que é o caso do H, K, etc. Ao commitarem, irão gerar versões diferentes da mesma raiz. Mas, para que esse programa se unifique, após o trabalho de vários desenvolvedores é importante fazer um Merge, uma junção dos códigos. Veja a arvore abaixo extraída do site da (mauda).
[pic 2]
Percebe-se então que na arvore acima as linhas na cor azul representam o Head (ramo principal) que deve ser o código do software em produção. As linhas na cor preta representam branch (os ramos secundários) criados para realizar alterações que o cliente do software deseja. E as linhas de cor vermelha representam operações de Merge, reunindo o código de dois branches ou o código de um branch com o head.
Portanto, os pontos C, D, E, F, G, M representam modificações realizadas no código em Produção. Mas, contradiz com a ideia que o código da Head não deve ser alterado sem ser criado um novo branch. Realmente é necessário criar um branch para trabalhar com alterações pedidas pelo cliente. Mas, se houver erros identificado pelo cliente em produção para esse tipo de caso é necessário que o erro seja corrigido rapidamente e seja feito um deploy (substituição) da nova versão em produção, então a alteração é realizada no Head, pois após o novo deploy a última versão do Head deverá contemplar o estado que a produção se encontra, ou seja, com a correção do erro.
Para subir um código para o versionador é necessário realizar uma operação de Commit. Para obter a última versão do código do versionador é realizada uma operação de Pull, o qual representa o download do código que está no versionador. Merge é a operação mais crítica de um versionamento, pois realiza a união de códigos de dois pontos do versionador, normalmente o local, do desenvolvedor, e o remoto do versionador.
Existem diversas ferramentas de versionamento disponíveis para ser utilizada por desenvolvedores. Hoje com o advento da computação em nuvem, não é necessário mais ter um servidor instalado para realizar isso, pois há serviços on-line que disponibilizam versionadores para serem utilizados. Um desses serviços é chamado de BitBucket e é nesta ferramenta que vamos aprofundar o conhecimento sobre versionamento de código fonte.
Bitbucket
O serviço Bitbucket é um serviço disponível pela empresa Atlassian. Ele é um repositório GIT/Mercurial, portanto, implementa dois padrões de versionamento GIT e o Mercurial.
A escolha do BitBucket na UNIFAE, é que o seu maior concorrente o GitHub é um serviço online de versionamento bastante conhecido mas, ele não possui a capacidade de manter projetos privados. A ferramenta Bitbucket possui um mecanismo de criação de projetos privados, permitindo que apenas a equipe tenha acesso ao projeto. E o SourceTree, facilita a utilização evitando ter que digitar códigos de comandos do GIT.
Passos para Criar um estrutura BITBUCKET – SourceTREE
- Primeiro crie uma conta no Bitbucket.
https://bitbucket.org/dashboard/overview
- Crie um repositório, nele os arquivos ficaram guardados. Em Settings, você configurar o repositório informando até a linguagem C, C#, Java, etc..., Colocar uma imagem para o repositório (avatar), será usado o GIT.
[pic 3]
Na tela inicial ele já faz um logo (JAVA) com o projeto.
Alguns conceitos desta tela:
O fork é usado para fazer uma cópia completamente separada de um outro projeto a partir de um determinado ponto. O fork é muito utilizado por equipes de desenvolvimento de projetos open source, pois permite que um projeto tenha um ciclo de vida dentro de um repositório a parte, sem influenciar o projeto original, sendo que no futuro, alterações que ocorram nesse projeto forkeado, possam ser incoroporadas ao projeto original.
...