Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git: do primeiro commit ao pull request

Git: do primeiro commit ao pull request

Jack Makiyama

May 27, 2017
Tweet

More Decks by Jack Makiyama

Other Decks in Programming

Transcript

  1. GITBOOK: O controle de versão é um sistema que registra

    as mudanças feitas em um arquivo ou um conjunto de arquivos ao longo do tempo de forma que você possa recuperar versões específicas.
  2. CENÁRIOS: ‣ TOTALMENTE SEM CONTROLE DE VERSÃO ‣ CONTROLE DE

    VERSÃO PRIMITIVO ‣ CONTROLE DE VERSÃO COM GIT
  3. PROBLEMAS ‣ Sobrepor arquivos importantes. ‣ Não ter registros, logs.

    ‣ Impossível fazer rollback sem colocar a mão no código.
  4. PROBLEMAS ‣ Duplicação de arquivos: ‣ index_.php ‣ index_backup.php ‣

    index_backup2.php ‣ index_backup1349.php ‣ Duplicação do projeto parcial ou integral: ‣ site/ ‣ site_teste/ ‣ Dificuldade em unir ou separar as features. ‣ Dificuldade no deploy do projeto. ‣ Não ter registros, logs. ‣ Impossível fazer rollback sem colocar a mão no código.
  5. PRIMEIRO COMMIT $ git commit -m "Primeiro commit index do

    projeto" [master (root-commit) d6359ae] Primeiro commit index do projeto 1 file changed, 1 insertion(+) create mode 100644 index.php
  6. SERVIDOR ‣ $ cd /project/path ‣ $ mkdir darkmira.git ‣

    $ git init --bare ‣ $ cd darkmira.git/hooks ‣ $ echo '#!/bin/sh\
 git --work-tree=/project/path --git-dir=/project/path/ darkmira.git checkout -f' ‣ $ chmod +x post-receive
  7. CLIENT ‣ $ git remote add production ssh://[email protected]/var/repo/ darkmira.git ‣

    $ git remote add production [email protected]:darkmira.git $ git push production master
  8. CREATE A BRANCH Create a branch in your project where

    you can safely experiment and make changes. OPEN A PULL REQUEST Use a pull request to get feedback on your changes from people down the hall or ten time zones away. MERGE AND DEPLOY Merge your changes into your master branch and deploy your code. ADD COMMITS DISCUSS AND REVIEW GitHub provides tools for easier collaboration and code sharing from any device. Start collaborating with millions of developers today! GitHub is the best way to build software together. WORK FAST WORK SMART THE GITHUB FLOW The GitHub Flow is a lightweight, branch-based workflow that's great for teams and projects with regular deployments. Find this and other guides at http://guides.github.com/.