Entrou em Community Technical Preview, ou CTP, o Visual Studio 2015 Update 2.

Este update se refere ao Visual Studio, mas como tem mudanças no Team Explorer, vou comentar sobre ele aqui.

O que ele afeta

O update tem impacto no Tools for Apache Cordova, C++, C#, VB, Typescript, Application Insights, SQL Server Data Tools, traz correções em performance e bugs e finalmente, e não menos importante, Team Explorer.

Se você quiser testar pode fazer o download aqui.

Se você quer distribuir, baixe o exe do link acima, e execute no console, no local onde se encontra o executável: “vs2015.2 ctp.exe” /layout

O download será feito para uma pasta, você deverá executar a instalação e poderá distribuir para outros, reduzindo o consumo de banda.

Vai demorar… senta e pega um café… dois… três…

Team Explorer

Novos comandos Git

Foi adicionado suporte aos comandos reset, cherry-pick e staging.

O comando reset é o responsável para voltar para um determinado estado no Git. Similar ao comando rollback no TFVC. Para saber mais sobre o reset por linha de comando leio os posts Git – Merge e Git -Rebase.

Cherry-pick é uma das features que fazem o Git ser o que é, ele ajuda a reescrever o histórico! Muito útil em alguns cenários de distribuição de software como frameworks e SDK’s. Tenho um post no meu backlog sobre esse assunto, acompanhe a categoria Git ou a tag Git aqui no blog.

E por último mas não menos importante, staging. Similar ao Shelve do TFVC, este comando guarda os arquivos que estão em edição ou sendo adicionados no momento. Particularmente uso quando a mudança que quero fazer é radical, por exemplo, quando aparece uma demanda não relacionada de trabalho. Já que com a agilidade de criar branchs no Git, talvez seja melhor “comitar” e mudar.

Git LFS

O suporte ao Git LFS, já disponível desde o ano passado no VSTS, chega agora para o Visual Studio, provavelmente também virá para os repositórios no TFS. Basicamente o LFS troca arquivos grandes de audio, videos ou imagens por ponteiros texto no Git, quando armazena no servidor remoto, TFS/VSTS, ou qualquer outro, tipo GitHub. Já que é uma feature nativa do Git e não específico da Microsoft.

Maiores informações sobre o Git LFS: https://git-lfs.github.com

Changes page

A página Changes, equivalente ao staging no console, do TE suporta staging, através de ações diretas como duplo clique do mouse em um arquivo com alteração (1), abrirá a janela de diff (2), ou clicando no botão ‘+’ (3) irá colocar todos os arquivos em staging.

2016-02-12 00_45_20-

History view

A visualização do histórico de commits é uma das poucas coisas que não é bem atendida pelo console. Dificilmente teremos uma visualização tão boa usando o comando:

git log --oneline --graph --decorate

O History view tem recebido atualizações tímidas. Foi implementado no Visual Studio 2013 apenas listando os commits. Na versão 2015 já apresentava o gráfico que se visualiza a esquerda, quando utilizamos o comando acima com “–graph”. No Update 2 implementa filtros para procura de commits de um desenvolvedor específico, por exemplo. Selecionando o commit procurado, o path do branch é destacado. Vai ficando próximo de outras ferramentas que utilizo juntamente com o console, como o comando gitk, comando padrão que abre uma tela gráfica, ou o cliente SourceTree, da Atlassian, que é a minha ferramente preferida até o momento para situações como essa. Com a evolução do Git no Visual Studio, se tornará outro software que não vou mais instalar?

2016-02-12 00_54_19-Greenshot

Espero que uma feature como essa vá para o Visual Studio Code, meu editor padrão, no momento, de arquivos XML e Powershell. Já não uso mais o Notepad++, desculpa aê pessoal da https://notepad-plus-plus.org/.

Branches page

A página Branches, traz as de uma forma mais visual, clicando com o botão direito em uma (1), no menu de contexto aparecem os comandos fetch, pull e push; aquele comando update, que não é nativo do Git, não existe mais! E também está acessível Rebase e Reset (3).

2016-02-12 00_57_33-Greenshot

Tenho que confessar que essas implementações de comandos Git no TE me surpreenderam. Não esperava que conseguissem comportar na interface gráfica mais features ou comandos que os lançados com o VS 2013. O Git tem muitas features, é colocar todas elas na UI de uma maneira funcional vai requerer um bom design. Ainda continuo preferindo utilizar a dobradinha IDE/Editor de código e console, acho mais produtivo. Mas para quem não gosta, vai gostar dessa evolução.

Gated Checkin for Team Foundation Version Control

Projetos com TFVC podem configurar política de branch, exigindo um build com sucesso antes que qualquer código seja submetido para uma branch.

Referência

https://www.visualstudio.com/news/vs2015-update2-vs

Emmanuel Brandão