| Bellacosa Mainframe o que é o git no zos |
O que é Git no z/OS?
Se há alguns anos alguém dissesse que programadores COBOL usariam Git, fariam commits, trabalhariam com branches e executariam pipelines CI/CD diretamente para aplicações Mainframe, muita gente acharia impossível.
Hoje isso é uma realidade.
O Git tornou-se uma das principais ferramentas de desenvolvimento também no ambiente IBM Z, permitindo que aplicações COBOL, PL/I, Assembler, JCL e REXX sejam desenvolvidas utilizando as mesmas práticas modernas empregadas em Java, Python, C# e JavaScript.
Mais do que uma ferramenta de controle de versões, o Git representa uma mudança cultural na forma como aplicações Mainframe são desenvolvidas.
Definição simples
O Git no z/OS é a utilização do sistema de controle de versões Git para armazenar, controlar, compartilhar e gerenciar o código-fonte das aplicações IBM Mainframe.
Ele registra todas as alterações realizadas em:
programas COBOL;
programas PL/I;
programas Assembler;
JCLs;
PROCs;
REXX;
Copybooks;
scripts de automação;
definições de pipelines.
Em outras palavras:
O Git é a memória completa da evolução de uma aplicação Mainframe.
Uma analogia simples
Imagine um escritor produzindo um livro.
Ao longo do tempo ele cria diversas versões.
Sem Git:
Livro_Final.doc
Livro_Final_2.doc
Livro_Final_3.doc
Livro_Final_AgoraVai.doc
Livro_Final_Definitivo.doc
Ninguém sabe qual é a versão correta.
Com Git:
Cada alteração possui:
autor;
data;
descrição;
histórico;
possibilidade de retorno.
Tudo organizado.
O que é Git?
Git é um sistema de Controle de Versões Distribuído (Distributed Version Control System - DVCS).
Criado por Linus Torvalds, em 2005, para o desenvolvimento do kernel Linux.
Hoje é o padrão mundial para desenvolvimento de software.
Por que usar Git no Mainframe?
Durante décadas o código COBOL era armazenado em bibliotecas PDS ou PDSE.
Embora isso funcionasse muito bem, surgiam limitações como:
histórico reduzido;
dificuldade para colaboração;
integração limitada com ferramentas modernas;
processos manuais de promoção.
O Git resolve esses desafios.
Como funciona?
Imagine um programa COBOL.
Antes:
Biblioteca PDS
↓
Editar
↓
Compilar
↓
Produção
Agora:
Programa COBOL
↓
Git
↓
Commit
↓
Pipeline
↓
Build
↓
Testes
↓
Deploy
Todo o processo torna-se rastreável.
Conceitos principais
Repositório (Repository)
É o local onde o código-fonte fica armazenado.
Exemplo:
Projeto_Banco
Dentro dele podem existir:
COBOL;
Copybooks;
JCL;
REXX;
documentação.
Commit
Sempre que uma alteração é concluída, cria-se um:
Commit
Ele registra:
o que mudou;
quem mudou;
quando mudou;
por que mudou.
Branch
Uma Branch é uma linha independente de desenvolvimento.
Exemplo:
Main
↓
Feature_PIX
↓
Correção_Boleto
Cada equipe pode trabalhar sem interferir nas demais.
Merge
Após os testes:
Branch
↓
Merge
↓
Main
As alterações são incorporadas ao projeto principal.
Clone
Permite copiar um repositório inteiro para a máquina do desenvolvedor.
Push
Envia alterações locais para o servidor Git.
Pull
Obtém as alterações mais recentes realizadas por outros desenvolvedores.
Git e COBOL
Hoje um programa COBOL pode seguir este fluxo:
Editar
↓
Commit
↓
GitHub
↓
Pipeline
↓
Compilação
↓
Testes
↓
Produção
Tudo semelhante ao desenvolvimento moderno.
Git e o z/OS
O código normalmente permanece armazenado no Git.
Quando necessário:
Git
↓
Pipeline
↓
Transferência
↓
Dataset
↓
Compilação COBOL
O processo é automatizado por ferramentas especializadas.
Ferramentas IBM
Diversas soluções integram Git ao Mainframe.
IBM Developer for z/OS (IDz)
Permite trabalhar com Git diretamente no Eclipse.
IBM Z Open Editor
Extensão para Visual Studio Code.
Suporte completo a:
Git;
COBOL;
JCL;
REXX.
IBM Dependency Based Build (DBB)
Automatiza builds utilizando código armazenado em Git.
IBM Wazi
Integra desenvolvimento moderno ao ambiente IBM Z.
z/OSMF
Pode participar de pipelines automatizados.
Plataformas Git
As mais utilizadas são:
GitHub;
GitLab;
Bitbucket;
Azure DevOps;
Gitea.
Git e CI/CD
O Git normalmente é o primeiro passo de um pipeline.
Commit
↓
Git
↓
Jenkins
↓
Build COBOL
↓
Testes
↓
Deploy
Benefícios
Histórico completo
Cada alteração fica registrada.
Trabalho em equipe
Diversos programadores podem desenvolver simultaneamente.
Segurança
É possível voltar rapidamente para versões anteriores.
Integração
Compatível com ferramentas modernas de DevOps.
Auditoria
Permite identificar quem alterou cada linha de código.
Quem utiliza Git no Mainframe?
Diversos profissionais.
Programadores COBOL;
Desenvolvedores PL/I;
Desenvolvedores Assembler;
DevOps Engineers;
Analistas de Sistemas;
Arquitetos;
Sysprogs;
Equipes de Qualidade.
Curiosidades incríveis
1. Git não substitui o z/OS
Ele controla o código-fonte, enquanto o z/OS continua sendo o sistema operacional que executa as aplicações.
2. Milhões de linhas de COBOL já são gerenciadas por Git
Grandes bancos e seguradoras migraram seus repositórios tradicionais para Git, mantendo décadas de código sob controle de versões moderno.
3. Git aproxima o Mainframe do restante da empresa
Equipes que desenvolvem em Java, Python, Node.js e COBOL passam a utilizar processos semelhantes de versionamento e colaboração.
4. O Git tornou-se peça fundamental do DevOps no IBM Z
Sem um sistema de controle de versões robusto, seria muito mais difícil automatizar builds, testes e implantações.
Erros comuns de iniciantes
"Git substitui PDS"
Não completamente.
Os programas continuam sendo compilados a partir de datasets no z/OS. O Git atua como repositório principal do código-fonte, enquanto ferramentas de build sincronizam os arquivos para o ambiente de compilação.
"Git serve apenas para Java"
Não.
Ele funciona igualmente bem com COBOL, PL/I, Assembler, JCL, REXX e praticamente qualquer tipo de arquivo texto.
"Git faz backup"
Não exatamente.
Embora mantenha o histórico das alterações, seu objetivo principal é o controle de versões e a colaboração entre desenvolvedores.
Quando aprender Git?
Depois de compreender:
COBOL;
JCL;
z/OS;
datasets;
DevOps;
CI/CD.
Esse conhecimento permitirá integrar o desenvolvimento Mainframe às práticas modernas utilizadas pelas maiores empresas do mundo.
Conclusão
O Git no z/OS representa a modernização do desenvolvimento no IBM Mainframe. Ele permite que aplicações escritas em COBOL, PL/I, Assembler e JCL sejam versionadas, compartilhadas e integradas a pipelines automatizados de DevOps, utilizando as mesmas práticas adotadas no desenvolvimento de software moderno.
Ao registrar cada alteração, facilitar o trabalho em equipe e integrar-se com ferramentas como GitHub, GitLab, Jenkins, IBM Dependency Based Build (DBB), IBM Developer for z/OS (IDz) e Z Open Editor, o Git tornou-se um componente essencial para qualquer profissional que deseje desenvolver aplicações IBM Z com qualidade, rastreabilidade e agilidade.
Sem comentários:
Enviar um comentário