segunda-feira, 24 de julho de 2023

Curso de Git e GitHub: primeiras impressões

 



Wallace Vianna é webdesigner freelancer e web developer

Acessei um curso de Git e GitHub; pra quem não é do ramo, Git é um software gerenciador de arquivos de projetos, e o GitHub - que é propriedade da Microsoft - é uma versão online desse gerenciador, permitindo compartilhar na internet esses projetos, além de fazer sincronização dele online, no seu computador de mesa/desktop - e vice-versa.

Me atraiu a idéia de ter um gerenciador de arquivos de projetos que fosse mais avançado que os discos virtuais como Mega.io, Google Drive, MS One Drive, Drop Box e outros (se bem que esses citados são muito bons para esse fim). 

Realmente o Git trabalha em modo texto (chamado console) e o GitHub acaba sendo o seu equivalente online, com interface gráfica/visual, mas com opções mais avançadas, que permite, entre outras coisas, que duas pessoas trabalhem a partir de um mesmo código, com versões diferentes. E em qualquer momento essas versões podem ser reunidas num arquivo só.

Não cheguei a usar o Git/GitHub com outros tipos de arquivo (imagem, video, áudio, etc) pra saber se essa mágica ocorre nesses tipos de arquivo, mas minha conclusão foi que, o Git (em modo texto) não é algo prático pra quem quer ter apenas um sistema de versionamento de arquivos, que ofereça versionamento e compartilhamento com outras pessoas, além do famoso backup na nuvem de projetos. O Git é um passo além dentro dessa necessidade.

Na verdade os próprios discos virtuais, para serem eficientes, já demandam estratégias próprias de uso, latu sensu, e o Git/Hub, strictu sensu, acaba sendo um complicador se for usado apenas como um "equivalente ao disco virtual na nuvem".

Assim sendo, deixo aqui o link do site ead.education, onde fiz um bom curso de Git e GitHub, online e gratuito, e faço meus comentários a seguir:

Prós:

  • O Git/Hub oferece recursos interessantes pra quem precisa trabalhar em equipe sobre um mesmo código, e este curso oferece o passo-a-passo correto pra quem quer aprender no ambiente Windows (no meu caso, versão 10), com o software instalado.
Contras:
  • O curso poderia explicar mais (ou melhor) os conceitos de"Commit", "Branch", "Modified" e "Staging"; então assistir videos ou ler sobre introdução ao Git e GitHub antes de fazer um curso pode ser interessante pra esclarecer esses conceitos e ver como encaixá-los no seu trabalho.
Observações:
  • O Git possui versão portátil, mas usá-lo assim demanda fazer ajustes nas variáveis de ambiente para que possa funcionar dentro ou fora do console (interface de texto) dele.
    Isso  pode ser um obstáculo ou complicador pra quem não tem experiência com linhas de comando e console do Windows, p.ex.
  • Na data deste post, o GitHub oferece repositório privado gratuito de arquivos, e não só o BitBucket, como o curso informa.

Outras informações:

Lista de comandos GIT

mkdir [cria diretorio/pasta]
cd [muda de diretorio no computador]
dir [lista pastas onde você está no PC]

$ git --version [versão do Git]
$ git config --global user.name "Nome do usuário" [cadastro de nome do usuário]
$ git config --global user.email email-do-usuario@dominio.com [cadastro de email do usuário]
$ git config --list [lista configurações do Git - usuário e email cadastrados

$ git init [inicializa o Git ou versionamento do repositório de arquivos; a partir daqui o prompt do terminal Git passa a ser o nome da pasta + (master)]

$ git add nome-do-arquivo.ext [adiciona arquivo para ser rastreado]
$ git add . [adiciona todos os arquivos na pasta para serem rastreados]
$ git reset HEAD nome-do-arquivo [Remove o arquivo do versionamento do Git; HEAD é onde o GIT se encontra ao fazer o versionamento; por padrão, é o arquivo original]

$ git commit -m "descrição do arquivo ou mudança" [adiciona mudança ao arquivo e uma descrição a esse marco temporal;
se der um status ou log (veja descrição  no parágrafo a seguir) logo após esse comando não vai constar nenhuma alteração feita, pois exibe somente as alterações  feitas após esse comando; se tiver alterações, esse comando informará que existem alterações]

$ git status [lista estado de seus arquivos - branch ou versão - no repositorio]

$ git log [lista os commits (marco de mudanças) nos arquivos]

Etapas do GIT (ou versionamento de arquivos):
Modified (arquivo modificado, sem gravar no Git)
Staging (arquivo pronto para ser gravado no Git, separando-o de outros arquivos)
Commited (gravação do estado do arquivo no Git) = commit ou snapshot (instantâneos) são sinônimos.

$ git checkout (primeiros 6 caracteres do ID do arquivo, exibido no $ git log é o bastante) [entra no commit modificação do arquivo no Git]
$ git checkout master [volta para o arquivo original]

ls [lista pastas e arquivos no Git]
ls -la [lista pastas, arquivos e Gits]

...

Comando Git para copiar repositório GitHub, online, para seu computador de mesa, via console:
git clone (url do repositório)
A autenticação pode ser via navegador web, basta entrar com seu login e senha do github, se já não estiver logado.

Texto relacionado:

Nenhum comentário:

Postar um comentário