Clipper On Line • Ver Tópico - Tutorial básico do GIT

Tutorial básico do GIT

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

 

Tutorial básico do GIT

Mensagempor rossine » 05 Set 2018 17:09

Olá José,

Baixei o GitGui do link que você citou, https://git-scm.com/ mas vem em inglês.
Rossine.

Harbour 3.4, MingW / Msvc, QT, Qt5xhb, GtQtc, DbfCdx, MySql/MariaDB.
rossine
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 281
Data de registro: 06 Ago 2007 09:57
Cidade/Estado: Divinópolis-MG
Curtiu: 0 vez
Mens.Curtidas: 19 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 25 Jun 2019 09:24

Achei este link hoje:

https://woliveiras.com.br/posts/comandos-mais-utilizados-no-git/

em PDF:
git-comandos.pdf
(708.07 KiB) Baixado 51 vezes
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 10 Jun 2020 14:55

Hoje precisei pesquisar uma informação nos "backups" do git, não encontrei, mas achei interessante o recurso.

fontegit.png


- Filtrei pelo nome do fonte que me interessava - no view/edit view
- Filtrei a palavra PDF nos commits - no view/edit view

E por último, coloquei ali PDF pra aparecer em destaque.

O fonte é gigantesco, então quanto mais ajuda melhor.
Sumiu a informação sobre a transação na impressão do pedido.
Estava tentando encontrar quando foi a última vez que ela existiu.
Não encontrei, mas as opções são interessantes.

Nota: dá pra perceber que eu alterei :String(), :Number() e :Date(), pra :ToString(), :ToNumber(), :ToDate().
Mas começou a gerar problemas, por estar acostumado assim, então voltei ao que estava antes.
Só comentário.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 16 Dez 2020 13:33

Andei descobrindo umas coisas novas do GIT.

Não resolve tudo, mas ajuda: BRANCHES.

De forma resumida: você cria pontos a partir de determinada situação do fonte, e trabalha com versões diferentes.

Exemplos:

De repente você trabalha na versão anterior, atual e seguinte do software.
Pode alterar o que vale pra todas de uma vez, ou o que vale só pra uma ou outra.

Acho que a integração do Harbour 3.2 on 3.4 é parecida com isso.
Cria a versão paralela contendo atualizações, e vai conferindo uma por uma.

Vi o comando GIT PICK, ou parecido, mas que no GIT GUI tá mais fácil fazer por visual, onde você escolhe uma alteração que já foi feita numa "versão", e integrar com a outra, de forma totalmente automática.
Continua trabalhoso, mas pelo menos seria uma forma de conferir CADA mudança do 3.2 pra ser incorporada no 3.4.
Melhor trabalhar com uma alteração pequena por vez, do que tudo de uma vez.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 16 Dez 2020 13:38

olhem como ajuda, visualmente dá pra ver o que falta integrar.
Nesse caso são diferenças do meu fork, mas com branches é parecido.

difhb.png
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 16 Dez 2020 13:43

Seria essa opção cherry-pick
Ela incorpora a alteração selecionada de uma versão pra outra.
Mais uns 10 anos e começo a entender mais coisas kkkk

Isso também pode me ajudar na atualização das LIBs que já reclamei aqui de perder alterações.
Basta eu criar um desses "desvios" (branches), e atualizar diretamente a original velha com a original nova, e minhas alterações serão aplicadas na nova versão !!!!
Inclusive... confirmar se as alterações que envio já estão valendo ou não... fica muito mais tranquilo. não tem limites.

git.png
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 16 Dez 2020 13:59

Pena que hwgui não está no github, mas ..... até coloquei 2.17 e 2.20 pra brincar....

hwgui.png
hwgui.png (6.23 KiB) Visualizado 528 vezes


Assim fica mais interessante conferir o que mudou de uma pra outra, podendo dividir essa alteração total em alterações parciais e menores.

Lembrando que isso está disponível pra NOSSOS FONTES, não apenas fontes de LIB ou do Harbour.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 10:28

O recurso tem.... mas ainda não entendi como usá-lo.

hwgui.png


na posição: hwgui update é o conteúdo atual da hwgui, já salvo
na posição: revert... é a original sem as últimas atualizações
gtwvg and hbwin.ch é a que eu tinha antes, com alterações que a atual não tem e outras que já tem

Na visualização embaixo, é a diferença entre a hwgui atual, e o que eu já mexi aqui, apenas um commit.

o objetivo seria criar um novo commit, contendo apenas o que resta a ser alterado no oficial.
Já vi que o ideal seria fazer pequenos commits, um "pequeno assunto" de cada vez, assim daria pra acertar tudo no automático, apenas movendo a ordem das alterações.
E usando branch, assim o branch seria uma espécie de lista pendente.

Aliás... tem essa também...
dá pra ficar juntando muito lixo no repositório... por exemplo, alterações de teste que nunca serão usadas oficialmente....
mas melhor lá do que no ambiente de trabalho kkkk
de certa forma, testes paralelos também fazem parte da história.... mesmo se não forem usados depois, então faz sentido.

Por exemplo, no meu caso, que não converti a contabilidade ainda, e aguardando outras coisas.... poderia já ir convertendo mesmo sem instalar em nenhum cliente.
Tudo controlado, mesmo sem uso, o difícil vai ser acostumar pra não fazer besteira, mas é muito interessante.
Sua máquina sempre limpa, somente com o que estiver mexendo naquele momento....

E se fizer besteira.... atualizar versão errada, por exemplo.... é só usar o cherry pick, desfazer da versão errada, e fazer na versão certa, automático.

Se salvar no github na fase intermediária, a fase intermediária também vai pra lá.
se deixar esse "lixo" só na máquina local (fica escondido), pode apagar o lixo depois.
Com lixo e tudo, é menos espaço do que se fosse ficar fazendo backup.

Equivale a ter backup de tudo, poder comparar tudo, poder transferir alteração, tudo de forma organizada e automática/semi-automática.
Tudo anotado... muito doido isso, mas muito bom.

Mas voltando ao assunto: não sei exatamente o que fazer agora, a sorte é que tem poucas alterações, e dá pra fazer de novo, de forma separada.
E tá tudo sob controle no git, posso até deixar pra ele mesmo conferir.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 15:49

Aproveitando.... pra mostrar outra utilidade dos branches:

A GTWVG que vocês conheciam..... é do Harbour 1.0... de 2008, 12 anos atrás.

https://github.com/vszakats/hb/tree/v1.0.0dev/harbour/contrib/gtwvg

No Harbour 2.0 que a nova GTWVG com API Windows apareceu.

https://github.com/vszakats/hb/tree/v2.0.0dev/harbour/contrib/gtwvg

No Harbour 3.0 foi onde recebeu uma repaginada

https://github.com/vszakats/hb/tree/v3.0.0dev/harbour/contrib/gtwvg

De lá pra cá, poucas mudanças.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 18:06

A propósito....

A GTWVG do Harbour 2.0 está mais amigável, pra quem quiser estudar API do Windows, ou até criar biblioteca própria, ou mexer na HWGUI.
As classes não usam herança, e por isso ficam mais amigáveis pra quem não está acostumado.
Tem até texto copiado da Microsoft nos fontes, como documentação.

https://github.com/vszakats/hb/blob/v2.0.0dev/harbour/contrib/gtwvg/wvgpushb.prg
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 20:34

rossine escreveu:Olá José,
Baixei o GitGui do link que você citou, https://git-scm.com/ mas vem em inglês.


Desculpe, não vi sua mensagem antes.
Não sei se tem em português, mas acho que traduzir só vai complicar.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 20:48

O que mostrei, e vou mostrar de novo, fica aqui

git1.png


Após selecionar isso, aparece esta outra tela, que é totalmente independente da primeira mas......
MUITA ATENÇÃO E MUITA CALMA NESSA HORA

git2.png


Imagine voce trabalhando na versão atual, precisar mexer na anterior, depois voltar na atual, desfazer alterações, etc. etc.
Já imaginou como faz hoje?

Por esse menu que apareceu, você faz tudo isso.
Mas muito cuidado pra não fazer uma zona com tudo.

Por exemplo.... no meu git....
Posso selecionar aí pra voltar pra versão Clipper de 12 anos atrás, e já sair compilando a versão Clipper. (não uso mais)
Depois selecionar pra versão em DBF, e já sair compilando. (não uso mais)
Depois selecionar pra versão em MySQL, e já sair compilando.
E posso fazer uma atualização que vai afetar todas as versões de uma vez.

Tudo isso em poucos cliques, talvez 3, tudo na mesma pasta, tudo sempre pronto.
Tipo... tudo isso sempre na pasta \aplicativo
Mudou aí, vai lá na pasta aplicativo e tá tudo diferente, de 10 anos atrás.
Mudou de novo, tá lá na pasta tudo do jeito atual.

Pois é... tantos anos usando e só agora que descobri esse básico.

Mas MUITO CUIDADO. Apesar do git avisar sobre salvar o que ainda não foi salvo.... pra não perder alterações em andamento.... é bom não arriscar.
Pode salvar trabalho incompleto e continuar depois, ou desfazer, sem problemas, então a primeira coisa é aprender/lembrar de sempre deixar salvo.

É muito doido isso, seria equivalente a ficar trocando de computador num clique, ou ter várias máquinas virtuais, etc.
Ao invés de complicações, bastam 3 cliques....
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 17 Dez 2020 20:54

A propósito....
Tava vendo uma explicação sobre as diferenças entre GIT e SVN.
Uma diferença é que SVN salva sempre uma cópia do arquivo completa, e o GIT não.
Se pensar em arquivos de 10MB, o SVN poderia usar 10MB a cada alteração, enquanto o GIT ocuparia alguns bytes.
Com certeza deve ter otimização interna, senão...... haja espaço.

Por isso acaba existindo opção grátis.
O histórico do Harbour COMPLETO, desde a versão 0, ocupa 350MB.

O meu tá ocupando 570MB... mas também salvo ícones, documentos, etc. , fora LIBs, EXEs, e backups, que salvei errado durante esse tempo todo.
Tá tudo lá, algum dia vou fazer limpeza disso. Já tem anos de histórico em uso direto, mas tem 12 anos de história parcial, porque salvei backups antigos também.
Tem até fonte de aplicativo que desativei há mais de 10 anos... e tudo num único projeto.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 19 Dez 2020 17:21

Ainda pegando o jeito....

Aí é na minha máquina local.
Criei um branch JoseQuintas, com minhas alterações particulares.

git3.png


E isso pode ser salvo também no github, e pode ser selecionado o que visualizar.

git1.png


git2.png


Dá pra ter várias versões ao mesmo tempo, e todas disponíveis pra download.
E dá pra definir qual é a default.

Na máquina local, dá pra ficar trocando de uma pra outra.

Há várias visões:

- o que está na máquina (que podemos trocar versão)
- o que está salvo no github
- a posição final de trabalho
- e branches intermediários com a mesma coisa
- Salvar branches é opcional, podem ficar somente local, tipo... pra reorganizar tudo antes de salvar

Notem que mesmo diferente, continua sincronizado com o original.
E pra cada branch mostra uma comparação diferente.
Posso puxar atualizações pra qualquer um deles, ou pros dois, etc.
É só ir gerenciando.

Só não sei se isso vai aparecer no master, ou se fica só no meu fork.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 19 Dez 2020 17:44

Lembrando:

O GIT é um software, que usamos LOCAL.
Criar backup nas nuvens, usando GITHUB ou BITBUCKET é OPCIONAL.

Tudo isso está disponível para NOSSOS FONTES particulares.
Venho usando git, github e bitbucket faz tempo, mas esta parte que mostrei agora é novidade pra mim.

Pois é... sabendo um pouquinho já ajuda... e com o tempo vai aprendendo mais coisas.
Perder fontes é ruim pra todo mundo, então é uma ferramenta de extrema utilidade.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 16390
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 928 vezes

Anterior Próximo



Retornar para Contribuições, Dicas e Tutoriais

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 4 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro