Como você sabe, é a melhor prática usar sempre o gerenciamento de controle de fonte (SCM) para seus projetos – mesmo projetos pessoais. Você sabe que o Android Studio tem uma integração incrível com Git para gerenciamento de controle de código fonte? Se você não sabia ou não tem experiência em usá-lo, então continue lendo este post. Mesmo que você já tenha usado a integração do Android Studio com Git, você ainda pode pegar alguns truques úteis neste post.
I’ll show you the many features of Git support in Android Studio and also how easy it is to do the different Git operations (commit, push, pull, branch, etc.) from inside Android Studio.
Neste tutorial, vou te guiar através da lista de recursos de SCM que estão disponíveis no Android Studio. Vamos olhar para as seguintes áreas:
- integrando um novo projeto do Android Studio com Git
- trabalhando com GitHub ou Bitbucket
- explorando a janela de Controle de Versão
- compromissos
- branches
- puxando e puxando de um repositório remoto
- Prrequisitos
- 1. Criar um projeto Android Studio
- 2. Integrando o Git
- 3. Integrando com GitHub ou Bitbucket
- 4. A janela Version Control Window
- A aba Local Changes
- A aba Console
- Aba Log
- 5. Fazendo um Compromisso
- Vendo o Log de Compromisso
- 6. Criando um ramo Git
- 7. fundindo ramos de Git
- Merge, Checkout, Delete, Compare, Rename Branch
- 8. Empurrando para um Repositório Remoto
- 9. Puxando de um Repositório Remoto
- Conclusion
Prrequisitos
Para ser capaz de seguir este tutorial, que vais precisar:
- um entendimento básico do sistema de controle distribuído de versões Git
- > Android Studio 3.0 ou superior
1. Criar um projeto Android Studio
Criar um novo projeto Android Studio (você pode nomeá-lo GitApplicationDemo
) com uma atividade vazia chamada MainActivity
.
2. Integrando o Git
Depois do seu projeto Android Studio ter sido configurado, clique no menu VCS, flutue no menu Importar para Controle de Versão, e selecione Create Git Repository…
Selecione a pasta principal do seu projeto Android Studio.
Clique no botão OK para inicializar o projeto com Git. Sob o capô, o Android Studio executa o comando Git:
git init
Como um lembrete, aqui está o que este comando vai fazer:
Este comando cria um repositório Git vazio – basicamente um diretório
.git
com subdiretórios paraobjects
,refs/heads
,refs/tags
, e arquivos de template. Um arquivo inicialHEAD
que referencia o HEAD do ramo mestre também é criado.
Um diálogo de informação irá aparecer:
Isto está nos falando de um arquivo chamado vcs.xml dentro da pasta .idea. Esta pasta contém apenas as configurações específicas do projeto. Note que este é o formato usado por todas as versões recentes do IntelliJ IDEA.
Idealmente, os arquivos no arquivo .idea/
não devem chegar ao Git- então você deve adicioná-lo a .gitignore
.
Por padrão, nós somos mudados para o ramo mestre. Você sempre pode ver o branch atual do seu projeto no canto inferior direito do Android Studio.
3. Integrando com GitHub ou Bitbucket
Você pode facilmente trabalhar em qualquer um dos seus repositórios de código fonte Android que está em uma conta GitHub ou Bitbucket no Android Studio. Deixe-me mostrar a você como fazer isso.
Navigate to File > New > Project from Version Control > GitHub.
(Se você quiser trabalhar em um repo do Bitbucket, selecione Bitbucket em vez disso. Se você quiser apenas clonar um reporte Git da internet para sua máquina local, selecione a opção de menu Git.)
Next, digite suas credenciais de conta GitHub e clique em Login.
Se o login foi bem sucedido, o diálogo do Repositório de Clones aparecerá. Este diálogo exibe um drop-down contendo uma lista de repositórios no GitHub que você possui ou trabalhou no momento.
Click Clone para clonar o repositório para sua máquina local dentro do diretório pai já selecionado.
4. A janela Version Control Window
Após iniciar com sucesso o nosso projecto Android Studio com Git, o Android Studio irá mostrar a janela Version Control. Clique na aba Version Control (na parte inferior esquerda do Android Studio) e vamos explorar o que temos lá. Note que você pode usar Alt-9 para abrir esta janela rapidamente.
Dentro desta janela, nós temos três abas diferentes: Alterações Locais, Console e Log.
A aba Local Changes
Mostra a lista de arquivos que foram modificados localmente (em sua própria máquina) e ainda não comprometidos com o repositório.
Vejamos as barras de ferramentas item disponíveis quando você estiver na aba Local changes.
- Clique neste ícone para atualizar o status dos seus arquivos no local de trabalho atual. O atalho é Control-F5.
- Este ícone quando clicado irá submeter as suas alterações actuais. O atalho é Control-Alt-Z.
- Clique neste ícone para reverter quaisquer alterações selecionadas.
- Clique neste ícone para criar uma nova lista de alterações. Note que uma lista de alterações é um conjunto de alterações em arquivos que representa uma alteração lógica no código fonte. O atalho é Alt-Insert.
- Clique neste botão para excluir a lista de alterações selecionada.
- Para ativar uma lista de alterações, basta clicar neste ícone.
- Para mover um arquivo selecionado para outra lista de mudanças, clique neste ícone.
>
- Clique neste ícone para expandir para ver todos os arquivos.
- Clique neste ícone para colapsar todos os arquivos.
- Clique neste ícone para mostrar os ficheiros alterados que estão agrupados por pastas.
- Clique neste ícone para copiar o caminho para o ficheiro seleccionado para a área de transferência do Sistema.
- Clique neste ícone para exibir o nó de arquivos ignorados com a lista de arquivos existentes ignorados pelo Git.
- Clique neste ícone para configurar a lista de arquivos que serão ignorados pelo Git.
- Clique neste ícone para abrir o painel de Preview Diff para comparar o arquivo atual com a última revisão submetida.
A aba Console
Dentro desta aba, vemos o resultado de executar comandos relacionados ao Git. Note que você não pode escrever comandos relacionados ao Git dentro desta aba – faça isso na janela do terminal no Android Studio.
Aba Log
Esta aba mostra todas as alterações que foram cometidas a todos os ramos do repositório local e remoto. Dentro desta aba, você pode navegar por commits para qualquer ramo.
A caixa de busca é usada para procurar por commits que tenham a string digitada ou uma expressão regular.
- Esta dropdown que é usada para filtrar commits por ramo. Para ver todas as submissões locais e remotas, basta selecionar Todas (o padrão).
- Para filtrar as submissões do autor, use esta lista suspensa. Você terá que digitar o nome do autor para ver as suas submissões. Seleccione Tudo para ver as submissões de todos os utilizadores.
- Utiliza esta lista suspensa para filtrar as submissões por um intervalo de tempo ou para uma data específica. Para ser específico sobre a data, basta clicar em Select e escolher a data. Selecione Tudo para visualizar as submissões feitas em todas as datas.
- Utiliza esta lista suspensa para filtrar as submissões pelo caminho dos ficheiros modificados.
- Este botão (IntelliSort) permite uma forma mais conveniente de ver as fusões, exibindo primeiro as submissões de entrada, directamente abaixo da submissão de fusão.
- Se este botão estiver habilitado, ramos longos são exibidos por completo, mesmo que não haja commits neles.
- Utiliza este botão para actualizar a lista de commits no projecto.
- Para ir para um hash, tag, ou ramo, simplesmente use este botão.
- Clique neste botão para aplicar as alterações da submissão seleccionada ao ramo actual.
- Clique neste botão para destacar as submissões do ramo selecionado que ainda não foram aplicadas ao ramo atual.
Você pode aprender mais sobre a janela da ferramenta Controle de Versão na documentação do IntelliJ IDEA.
5. Fazendo um Compromisso
Você vai notar que quando configuramos a integração do Git com nosso projeto Android Studio, a cor do nosso nome de arquivo ficou marrom. De acordo com a documentação oficial do IntelliJ IDEA, para arquivos com rótulos marrons:
O arquivo existe localmente, mas não está no repositório, e não está agendado para ser adicionado.
Vamos agora ver como fazer um commit no Android Studio. Mas primeiro, precisamos adicionar nossas alterações no diretório de trabalho à área de encenação. No console, nós usaríamos o comando git add
.
git add <file> || <directory>
Mas podemos fazer isto mesmo a partir do Android Studio. Selecione o menu drop-down Arquivos não versionados na aba Alterações locais, clique com o botão direito do mouse e vá para Git > Adicionar ou usar Control-Alt-A. Lembre-se que selecionando a pasta raiz, tudo o que estiver dentro dela será adicionado à área de encenação.
Agora, você vai observar que as cores da etiqueta do seu arquivo mudaram de marrom para verde. Aqui está o que a documentação do IntelliJ IDEA diz sobre nomes de arquivos que são coloridos de verde:
Arquivo está agendado para ser adicionado ao repositório.
Para saber mais sobre as diferentes cores que um nome de arquivo pode ter dependendo do status do arquivo no Android Studio (IntelliJ IDEA), verifique a documentação dos destaques do status do arquivo.
Para finalmente submeter as nossas alterações, clique no botão submeter alterações no separador Alterações Locais, e a caixa de diálogo Submeter Alterações irá aparecer.
- Aqui podemos seleccionar ou anular a selecção de ficheiros que devem ser incluídos nesta submissão. Por defeito, todos os ficheiros encenados são verificados.
- Escreve a tua mensagem de submissão aqui dentro. Se tens uma mensagem de submissão previamente escrita, ela será mostrada aqui como padrão.
- Selecciona a(s) operação(ões) a executar antes de submeteres ao Git.
- Comparação lado a lado dos ficheiros alterados.
- Com este botão dropdown, você pode tanto submeter e pressionar ou apenas submeter.
Então para fazer uma submissão, vamos escrever uma mensagem de submissão:
Initial commit
Selecione Commit no menu suspenso Commit para finalmente submeter suas alterações. Note que você pode usar o atalho Control-K para submeter as alterações a qualquer momento a partir do Android Studio.
Se você agora revisitar a aba Alterações Locais na janela Controle de Versão, você não verá nenhum dos seus arquivos listados lá mais – porque nós os submetemos com sucesso ao nosso repo local.
Nota que você também pode navegar para VCS > Git > Commit File… para fazer um commit e VCS > Git > Add to add a file for staging. Além disso, você pode clicar no ícone de alterações de commit na barra de ferramentas principal no topo do Android Studio para fazer um commit (ou commit e push) rapidamente.
Na nossa classe MainActivity.kt, eu fiz uma modificação simples na classe, substituindo onResume()
. Você notará que a cor do nome do arquivo após a modificação agora é azul; isto significa que nós modificamos o arquivo.
Vendo o Log de Compromisso
Agora, revisite a janela de Controle de Versão mais uma vez e vá para a aba Log. O que você vai ver agora são os commits que foram feitos para este projeto. Para obter mais detalhes sobre qualquer commit, basta clicar nele.
- Este painel principal mostra todos os commits no projeto de acordo com o filtro selecionado. Em outras palavras, isto nos mostra o histórico de commits.
- Este painel mostra os ficheiros e pastas afectados pela submissão seleccionada no painel do histórico de submissões.
- Este painel mostra mais detalhes sobre a submissão seleccionada.
Ao clicares com o botão direito do rato numa submissão, podes também ver um menu que te permite copiar o número da revisão, criar um patch, verificar uma revisão, ramificar a partir dessa submissão, criar uma nova etiqueta, e reiniciar o ramo actual para essa submissão.
Vejamos agora como podemos ver que código foi adicionado, editado, ou removido. Em outras palavras, queremos verificar – em mais detalhes – as alterações feitas.
Pergunte no ícone mostrar diff acima da janela onde os arquivos afetados pela submissão são mostrados. Um atalho é usar o Control-D ou fazer duplo clique no ficheiro ou pasta.
O que irás ver é uma caixa de diálogo Mostrar Diff, mostrando as diferenças entre a submissão anterior e a submissão seleccionada.
Uma região de cor verde no ficheiro destaca as linhas que foram adicionadas ao ficheiro – deves ver algumas se estiveres a seguir. As regiões cinzentas destacam as linhas que foram removidas. E linhas de realce azuis que foram alteradas. Tente explorar os filtros e botões de ícones disponíveis no topo da caixa de diálogo Mostrar Diff para saber mais sobre isso.
Nota que também podes ver alterações às imagens na caixa de diálogo Mostrar Diff!
Clicando com o botão direito do rato num ficheiro, também tens a opção de ver a diferença entre a última submissão e a actual submissão desse ficheiro-compartilhar diferença (atalho Control-D). Podes também editar o código fonte (F4), abrir a versão no repositório, reverter alterações seleccionadas, mostrar o histórico da revisão, e mostrar detalhes da submissão desse ficheiro.
6. Criando um ramo Git
O ramo mestre será atual por padrão. Entretanto, é recomendado sempre ramificar do ramo mestre e fazer o seu trabalho em um ramo separado, específico para características. Quando você terminar de codificar sua característica (e quando você tiver testado suas alterações), você então fundirá suas alterações no ramo mestre.
Vejamos como criar um ramo a partir do ramo mestre.
Vá para o canto inferior direito do Android Studio e clique no menu suspenso Git: master.
Clique no botão New Branch.
Digite o nome do ramo. No nosso caso, use o dev.
Finalmente, clique no botão OK para que o Android Studio crie automaticamente a ramificação do dev e também faça o checkout para essa ramificação.
Estamos agora na ramificação dev. Como você pode ver abaixo:
Baixo do capô, o Android Studio executa o comando:
git checkout -b dev
Nota que também podemos criar um novo ramo navegando para VCS > Git > Ramos > Novo Ramo.
7. fundindo ramos de Git
Dentro do ramo dev, basta criar uma atividade básica ProfileActivity.kt e os seus ficheiros de layout e submeta as suas alterações. Nós vamos ver como fundir o dev para dominar dentro do Android Studio.
Vá e confira do ramo atual (dev) para o ramo master (o que significa que vamos mudar do dev para o master).
Merge, Checkout, Delete, Compare, Rename Branch
Se você clicar em um branch, serão mostradas algumas operações que você pode realizar naquele branch. As operações incluem fundir, comparar dois ramos, renomear o ramo, rebasear, check out e apagar o ramo.
Vamos ver como fundir um ramo neste post. No ramo mestre, funda o ramo dev navegando para o ramo dev e clicando em Merge no menu.
É isso mesmo! Agora fundimos com sucesso o nosso ramo dev com o ramo master.
Nos bastidores, o Android Studio executa o comando:
git merge dev
Nota que nós também podemos fazer a fusão avançada dentro do Android Studio. Podemos especificar a estratégia de fusão (Resolve, Recursive, Octopus, Ours, ou Subtree) ou não usar o modo de fusão rápida.
Para configurar isto ao fundir, navegue até VCS > Git >Mudanças de fusão…
Aqui você pode selecionar múltiplos ramos para fundir, selecionar a estratégia de fusão, e escrever uma mensagem de submissão. É altamente recomendado que você realmente entenda estas estratégias de integração e se deve usar o modo de avanço rápido antes da integração.
8. Empurrando para um Repositório Remoto
Cada projeto Git deve ter um repositório remoto ou central onde outros desenvolvedores possam colaborar no projeto de qualquer lugar do mundo. No Android Studio, também é possível empurrar nossos commits ou alterações para um repositório remoto. Para fazer isso, navegue para VCS > Git > Push…
Aqui podemos adicionar a URL do repositório remoto, clicando no link Definir Remoto na caixa de diálogo Push Commits que aparece. Finalmente, clique no botão Push quando estiver pronto! Um atalho é usar o Control-Shift-K.
Android Studio executa o seguinte comando nos bastidores:
git push
You can also quickly make a commit with a push by clicking on the commit changes icon in the main toolbar or using Control-K.
9. Puxando de um Repositório Remoto
Para atualizar seu projeto (para fazer um puxar) com as últimas mudanças do repositório remoto (você já deve ter adicionado a origem remota), navegue para VCS > Git > Pull. Isto irá actualizar automaticamente o teu projecto Android Studio com o código mais recente a partir do repositório remoto.
Para iniciar um pull, você também pode clicar no ícone do projeto de atualização na barra de ferramentas principal ou usar o atalho Control-T.
Se você fizer isso, o Android Studio executará o comando Git pull
nos bastidores:
git pull
Note que se você encontrar um conflito de merge enquanto puxa ou empurra, o Android Studio mostrará um diálogo de conflito de merge realmente útil que o ajudará a resolver esse conflito.
Conclusion
Neste tutorial, você aprendeu como é fácil executar diferentes operações de Git que você pode normalmente fazer na linha de comando ou no terminal. Usando as ferramentas de Git do Android Studio torna mais fácil e mais eficiente colaborar em projetos Android com outros desenvolvedores.
Para saber mais sobre codificação para Android, confira alguns dos nossos outros cursos e tutoriais aqui no Envato Tuts+!
-
AndroidShowing Material Design Dialogs in an Android AppChike Mgbemena
-
AndroidCriar um Material Design Interface com abas num aplicativo AndroidChike Mgbemena
- >
AndroidBuild a Music App With an Android App Template
>
Chike Mgbemena
>
>