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 JoséQuintas » 18 Jun 2015 20:34

O GIT é interessante pra usarmos na pasta de fontes.
É um controle de versões de arquivos, com opções diversas.

Vamos ao básico, o que já é de muita ajuda

Nota: pra quem acha que parece... não apenas parece, "É" o mesmo software que geralmente usamos pra baixar fontes do github

Aonde encontrar:
https://git-scm.com/

Após instalar, vai ver uma nova opção no menu de contexto do Windows.
É obrigatório estar em uma pasta, seja qual for.
Clique da direita, está lá nas opções: Git GUI Here
gitgui1.png


E ao selecionar, aparece esta tela:
gitgui2.png


Clica em criar novo repositório:
gitgui3.png


E digita o nome da pasta, ou seleciona no explorar.
A tela que vai aparecer é a seguinte, vai ser a sua tela de trabalho com o git.
gitgui4.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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 20:50

Pra facilitar e não ter que marcar um por um, dá pra usar a opção de tudo de uma vez, pelo menos como ponto de partida.
gitgui5.png


Ao fazer isso, os arquivos vão pra lista de baixo.
gitgui6.png


Como é a primeira vez, isto é muito importante:
Tudo que acrescentar vai passar a fazer parte do backup e controle de versão.
Então coloque apenas o que interessa.

Ou adicione um por um, clicando em cada um, ou acrescente tudo, e retire o que não interessa da lista de baixo, basta clicar também.

Estando tudo ok, coloque um texto de sua preferência, e clique em salvar revisão.
gitgui7.png


Pronto.
Configuração inicial completa.
Pode fechar tudo que a configuração está pronta.

Com isso, foi criado na pasta indicada a pasta ".GIT", que vai conter tudo que precisa.
Qualquer coisa, só apagar essa pasta, caso mude de idéia sobre usar ou não o GIT.

No momento, a pasta ".GIT" contém a versão inicial dos arquivos.
Nada na sua pasta foi alterado, ela apenas contém uma cópia de tudo como ponto de partida.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 21:04

Agora abri meu editor favorito, com um fonte horrível por sinal, apenas pra demonstrar.
Seria o trabalho normal do dia a dia: abrir um fonte pra fazer alteração.
gitgui8.png


Fiz pequenas alterações, só pra facilitar no que vém depois.
gitgui9.png


Pode trabalhar o dia inteiro, e mexer em fontes o dia inteiro.
Aqui apenas pra demonstrar, só mexi um pouco, num único fonte.

Só apaguei alguns comentários inúteis.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 21:10

E ao abrir o Git GUI novamente.... voilá....

gitgui10.png


Ele está comparando todos os arquivos atuais com os que foram salvos anteriormente, e mostrando o que está diferente.

No caso aqui é um fonte, e o arquivo de backup que foi criado.

(-) equivale a linha retirada/modificada
(+) equivale a linha acrescentada/atualizada

Só aqui, já te ajuda a revisar as alterações que fez, pra confirmar se era isso mesmo.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 21:31

gitgui11.png


Agora você decide:
Quer considerar concluído, e já atualizar seu "backup", colocando texto e salvar revisão.
Ou quer que faça parte da revisão anterior...

No final, é clicar em salvar revisão.
A próxima revisão vai ser a partir do que salvar agora.
Se não salvar, na próxima vez vão constar estas alterações e as próximas que fizer.

Isso é só a parte básica:
Neste momento você passa a ter backup dos fontes
Além disso, backups em cada ponto em que salvou revisão
Além disso, pode retornar os fontes, para a revisão que quiser - voltar atrás para a posição salva que quiser
E por aí vai.

Se apagar todos os fontes da pasta, menos a pasta ".GIT", vai poder retornar todos os fontes anteriores (a última posição salva).

É isso. Um controle de versões.

Por enquanto não encontrei outras opções no modo visual.
Por exemplo, eu queria ver a lista das revisões.

Mas o básico, já é de muuuuita ajuda.

Valem os mesmos comandos usados nos fontes do Harbour, quando baixados pelo GIT.
Voltar a uma determinada revisão, voltar todos os fontes caso tenha apagado por descuido, etc.

Nota:
Neste uso, o "enviar" não é usado. Para isso, teria que ter algum repositório configurado como matriz, que poderia ser outra máquina ou até na internet.
Não cheguei nessa parte ainda, mas não sei se vou tão fundo nisso.
Uma vez que a pasta ".GIT" contém tudo, acho que ao copiar HDs aqui, já é suficiente - vai ser um backup não só atual, mas de cada uma das revisões.

Nota2:
É por isso que baixar fontes do Harbour pelo Git HUB ocupa bastante espaço, e tem arquivos ".git".
É que está sendo baixada toda a "história" do Harbour, desde o último fechamento que foi a 3.0. (se for a oficial).
E poderíamos posicionar os fontes pra qualquer revisão, até mesmo no ponto considerado como zero.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 22:14

Achei...

gitgui12.png


gitgui13.png


Na primeira janela, mostrando cada uma das revisões.
É como um mapa geral, de todas as revisões.
Na primeira, tudo foi alteração, porque antes estava vazio.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 22:31

Mostra três posições...
Clicando na segunda, mostra o fonte com as alterações que já citei acima, ref. retirar observações

gitgui15.png


E clicanco na última, alterações que fiz depois pra teste.

gitgui14.png


Ou seja, controle total dos fontes, com visão geral de tudo que foi mexido em todas as revisões.

Só pra lembrar, apesar de não mostrado aqui, dá pra retornar pra qualquer uma dessas revisões.
Se fez coisa errada nos fontes.... dá pra desfazer...

Só pra constar:
Git GUI é apenas uma interface visual para o programa Git.
É possível que não possua todas as opções disponíveis via prompt.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 18 Jun 2015 22:44

Durante os testes, acabei mexendo aqui.

gitgui16.png


Suponho que seja pra "fechar" uma versão.

Isso explica porque no mapa haviam duas opções com destaque em verde, porque representam os pontos de fechamento.
Tipo... vai alterando/salvando um sped contábil, até que finalmente libera, e marca como 'fechado".
Uma referência a mais pra facilitar localização de alterações.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 20 Jun 2015 19:28

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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 20 Jun 2015 20:04

Talvez tenha faltado esclarecer um ponto:

Isso de salvar revisão, ele mexe somente na pasta .GIT, e não na pasta de trabalho.

Mas no caso de pedir pra restaurar/posicionar em determinada revisão, nesse caso a pasta é modificada.
É como restaurar um backup de determinada data.
Mesmo "restaurando" determinada data, a pasta GIT ainda contém todas as revisões, inclusive a mais atualizada.
Então cuidado, antes de testar esse recurso.
Saiba que não perdeu nada, mas tem que saber o comando pra voltar à posição atual.

Então, num "grosso modo", copiar a pasta .GIT é o mesmo que copiar todos os backups de todos os tempos.
E ocupando menos espaço do que ocupariam todos os backups isolados.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor sygecom » 20 Jun 2015 20:16

José, parabéns mais uma vez.
Tutorial de fácil entendimento e de utilidade muito grande para qualquer programador, muito bom.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 6740
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 84 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 20 Jun 2015 22:12

Obrigado.

Acabo de achar uma pequena falha no GIT.
Nem sei se dá pra considerar assim.

Como tenho backup de fontes desde 2008, comecei a montar a história de 7 anos no git.
E em 2009, houve uma mudança onde um diretório chamado PG desapareceu, e depois apareceu um arquivo PG.
Com isso o GIT deu erro.
Provavelmente ele foi comparar diretório com arquivo, e não dá.
Só apaguei o PG da pasta e recarreguei.

É que o git não controla apenas a pasta definida, mas tudo que estiver dentro dela, inclusive subpastas.

Como minha pasta FONTES contém subpastas...

Estou encontrando pontos interessantes, que nem lembrava, como ter usado DLLs em clipper por volta de 2009.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 20 Jun 2015 22:23

Talvez ajude pra exclarecer mais sobre o git....

Tenho o backup de fontes, o primeiro de cada mês.
Descompacto pra pasta do GIT, entro no GIT gui, marco o que foi alterado e salvo, e depois apago tudo.
E estou repetindo isso pra cada backup.

fotogit.png


Então é apagar tudo (menos .git) e salvar o backup de outra data.
Como o git analisa diferenças (não é um programa residente que fica vigiando) dá tudo certo.

fotogir2.png


Isto mostra claramente que a pasta .GIT contém tudo equivalente ao backup de cada data.
E pra ficar melhor ainda... ocupando menos espaço do que os backups originais, e tudo organizado e na mão, pronto pra uso.

No momento equivale a 553MB de backup, e ocupa 41MB.
Além das vantagens que já mostrei, ainda vou economizar espaço em disco.
E como mantenho 2 HDs de backup, mais de 1.5GB de economia, por enquanto, e mantendo a mesma informação.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 20 Jun 2015 23:32

Muita rotina de 2008 que dava até pra ser aproveitada por quem ainda usa Clipper.

- Atualização automática de EXE, com ajuda de VBScript
- Atualização automática de estruturas de DBF
- Consulta a webservice de CEP, com ajuda de VBScript
- DLLs em Clipper, com ajuda do Blinker
- Mouse em Clipper - muita gente ainda não sabe que dá pra fazer isso em Clipper
- PDF gerado totalmente por fonte Clipper
- Preview de impressão em Clipper, permitindo imprimir qualquer intervalo de páginas

Eu achava tudo isso normal na época, e achava que todo mundo fazia isso.
Em 2008 eu nem entendia o uso de codeblocks, e me achava atrasado no Clipper por isso....

Bons tempos... ganhava bem mais naquela época, e me divertia mais...

A propósito... em 2008 ainda usando compactação/descompactação, brigando com linhas de matricial/laser/jato de tinta, e PDF, se é que tinha, era com ajuda do VB.
E brigando pra descobrir como assinar uma nota fiscal eletrônica.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

Tutorial básico do GIT

Mensagempor JoséQuintas » 21 Jun 2015 00:00

Cheguei em 2011.
Ainda em Clipper.
Mas mantendo os fontes compatíveis, preparados pra trocar.

#ifdef __HARBOUR__
   #include "sixcdx.ch"
    //ADO   #include "adordd.ch"
#else
   #ifdef _CL53_
      #include "ord.ch"
   #else
    #include "sixcdx.ch"
   #endif
#endif


Vixi... sou um bebê em Harbour então.
Estou no backup de 2011/04 e ainda não usava Harbour pra valer.
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: 14269
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 859 vezes

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