Quando um projeto 4D é gerido com o Git, mesmo uma pequena alteração no código pode obrigá-lo a alternar entre várias ferramentas. Edita-se o código no 4D, abre-se um terminal para inspecionar o repositório, utiliza-se uma aplicação de comparação para rever as alterações e, em seguida, muda-se para um navegador para aceder ao GitHub.
Essa alternância de contexto cria atrito num fluxo de trabalho que deveria manter-se focado numa única coisa: compreender e melhorar o código.
4DPop Git traz operações comuns do Git e do GitHub diretamente para o 4D IDE. Oferece aos programadores 4D uma forma visual de rever alterações, preparar commits específicos, explorar o histórico, alternar entre ramos e sincronizar um projeto sem saírem do ambiente onde já trabalham.
VEJA O ESTADO DO SEU PROJETO DE UM OLHAR
O widget do Git está disponível diretamente na barra de ferramentas do 4DPop, proporcionando-lhe uma visão rápida do repositório sem ter de abrir outra ferramenta.
A partir do widget, pode ver:
- O ramo atual
- Alterações locais
- Commits disponíveis para pull
- Commits à espera de serem enviados

Também pode atualizar o repositório, abrir a janela principal do Git, alternar entre ramos e aceder às definições do repositório a partir do mesmo local.
Se o projeto ainda não for um repositório Git, o 4DPop Git pode inicializá-lo por si. Isto cria a pasta .git local para que o Git possa começar a acompanhar o projeto. Não cria automaticamente um repositório remoto.
REVISAR E SUBMETER ALTERAÇÕES DIRETAMENTE NO 4D
Depois de modificar um método, o passo seguinte é, normalmente, compreender exatamente o que mudou antes de o submeter.
A página «Alterações» separa as suas modificações locais do índice do Git. Pode selecionar um ficheiro, inspecionar as diferenças, escolher quais as alterações que devem ser incluídas no próximo commit e escrever a mensagem de commit a partir da mesma janela.

Esta separação torna-se especialmente útil quando existem várias alterações não relacionadas no mesmo diretório de trabalho. Em vez de preparar tudo em conjunto, pode preparar commits mais pequenos e mais específicos, que são mais fáceis de compreender e rever posteriormente.
O menu «Ficheiro» também disponibiliza ações práticas para trabalhar com alterações individuais. Pode abrir um ficheiro no editor de código 4D ou numa ferramenta de comparação externa, copiar o seu caminho, adicionar um padrão de ignorar ou descartar uma alteração local após confirmação.
Antes de atualizar o ficheiro .gitignore, o 4DPop Git também permite pré-visualizar o padrão que será adicionado.
COMPREENDA COMO O SEU CÓDIGO EVOLUIU
Por vezes, a questão importante não é apenas o que mudou, mas como é que o código chegou ao seu estado atual.
A página «Histórico» apresenta os commits juntamente com um gráfico codificado por cores que mostra ramos e fusões. Os ramos locais, os ramos remotos, as etiquetas e os stashes aparecem diretamente no gráfico, proporcionando-lhe uma visão mais clara da estrutura do repositório e da sua evolução.

Selecione um commit para verificar o seu autor, data, identificadores, ficheiros alterados e a comparação (diff) em relação ao commit pai.
O histórico é carregado em segundo plano, pelo que pode continuar a utilizar a interface enquanto o 4DPop Git lê repositórios de maior dimensão.
O 4DPop Git também adiciona duas macros diretamente ao editor de métodos 4D:
- O histórico do Git abre os commits que alteraram o ficheiro atualmente a ser editado, incluindo o acompanhamento de renomeações e alterações não submetidas.
- O «Último commit para seleção » identifica o commit mais recente que modificou as linhas selecionadas.

Estas ações fornecem-lhe um contexto útil sem interromper o seu fluxo de programação. Quando se depara com lógica de negócio mais antiga, investiga uma regressão ou prepara uma correção numa base de código partilhada, pode ver rapidamente quando uma alteração foi introduzida e de onde veio.
SINCRONIZE COM A SUA EQUIPA
Assim que as suas alterações estiverem prontas, pode fazer fetch, pull e push diretamente a partir do widget do Git ou da janela principal.
O «pull» suporta fluxos de trabalho de fusão e rebase, com a opção de guardar automaticamente as alterações locais quando necessário.
A função «Push» permite publicar um ramo e também suporta a opção « –force-with-lease » quando a reescrita do histórico remoto for intencional.
Se não estiver configurado nenhum repositório remoto, a opção «Publicar no GitHub» simplifica a configuração. Utiliza o fluxo de dispositivos da CLI do GitHub para autenticação e, em seguida, permite que o componente crie o repositório do GitHub e envie os seus commits locais.
Isto significa que não precisa de copiar nem gerir manualmente um token do GitHub dentro do 4D.
INSTALAR O 4DPOP GIT
Com o 4D 21 ou versões posteriores, pode instalar o 4DPop Git através do Gestor de Dependências, adicionando a seguinte dependência do GitHub: vdelachaux/4DPop-Git
O Git também tem de estar instalado no computador, uma vez que o componente utiliza o executável local do Git.
A CLI do GitHub é opcional, mas recomendada se pretender utilizar o fluxo de trabalho «Publicar no GitHub ».
AUTOMATIZAR FLUXOS DE TRABALHO DO GIT A PARTIR DO CÓDIGO 4D
O 4DPop Git não se limita à sua interface visual. Também disponibiliza uma API programável através do namespace da classe `git `.
Por exemplo, um projeto anfitrião pode preparar alterações, criar um commit e enviá-lo diretamente a partir do código 4D:
var $git : cs.git.Git:=cs.git.Git.me
$git.add("all")
$git.commit("Update customer dashboard")
$git.push()
A API fornece acesso ao estado do repositório, ramos, remotos, etiquetas, stashes, histórico, comparações, Git LFS e resultados de comandos.
Isto dá-lhe a flexibilidade de integrar ações sensíveis ao repositório nas suas próprias ferramentas e fluxos de trabalho 4D, em vez de limitar as operações do Git à interação manual.
O 4DPop Git foi concebido para projetos 4D. As bases de dados binárias, como .4db e .4dc , não são geridas como ficheiros de projeto individuais, pelo que não oferecem o mesmo fluxo de trabalho do Git.
MANTENHA O GIT PERTO DO CÓDIGO
4DPop Git aproxima o estado do repositório, o histórico, as diferenças, os commits e a sincronização do código em que já está a trabalhar.
Pode rever as alterações sem ter de alternar entre aplicações, criar commits mais organizados, compreender como um trecho de código evoluiu e gerir as operações diárias do Git diretamente a partir do 4D.
Pronto para experimentar?
Visite o repositório 4DPop Git no GitHub para obter instruções de instalação, guias do utilizador, capturas de ecrã e documentação da API.
Também pode partilhar os seus comentários e ideias sobre fluxos de trabalho no Fórum da 4D.
De momento, não é possível deixar comentários nesta publicação.