diff --git a/_images/baby-smile.jpg b/_images/baby-smile.jpg new file mode 100644 index 0000000..19fbb41 Binary files /dev/null and b/_images/baby-smile.jpg differ diff --git a/_images/boycrying.jpg b/_images/boycrying.jpg new file mode 100644 index 0000000..140dca1 Binary files /dev/null and b/_images/boycrying.jpg differ diff --git a/git-gitsvn/clone.dia b/git-gitsvn/clone.dia new file mode 100644 index 0000000..52d903b Binary files /dev/null and b/git-gitsvn/clone.dia differ diff --git a/git-gitsvn/clone.png b/git-gitsvn/clone.png new file mode 100644 index 0000000..444a802 Binary files /dev/null and b/git-gitsvn/clone.png differ diff --git a/git-gitsvn/git-gitsvn.pin b/git-gitsvn/git-gitsvn.pin index c1696d0..f29843c 100644 --- a/git-gitsvn/git-gitsvn.pin +++ b/git-gitsvn/git-gitsvn.pin @@ -1,34 +1,26 @@ #!/usr/bin/env pinpoint # default style -[background.png] -[font=Sans 50px] +[../_images/Sketch27014711.png] +[font=Sans 100px] [fill] [center] -[text-align=center] -[shading-opacity=0.0] -[text-color=white] [text-align=left] # presentation starts here ---- [font=Sans 100px] [header.png] [text-align=center] +--- [font=Serif 100px] [text-align=center] -Git + Git-SVN - -Júlio Biason +GIT + GIT-SVN --- -Por que GIT - -De tudo que o GIT pode fazer, o que importa aqui é que é possível fazer -commits sem mandar para o servidor. +GIT Básico --- -O "index" +O "index" -O conceito do "index" é o que mais diferencia o GIT dos demais SCVs. +O conceito do "index" é o que mais diferencia o GIT do SVN. "index" são as alterações que serão mandadas, não os arquivos. @@ -42,16 +34,123 @@ O conceito do "index" é o que mais diferencia o GIT dos demais SCVs. git commit - Guarda as alterações como uma revisão. +(git commit -a adiciona TODAS alterações no "index" e gera um commit.) + git push - Envia as alterações para um servidor (normalmente, primeira execução é git push origin master, onde origin é um alias para o servidor). --- -Até aqui, SVN tá ganhando porque para mandar pro servidor é +Até aqui, SVN parece mais simples porque para mandar pro servidor é um passo só (svn commit) vs 3 do GIT (git add, git commit, git push). --- +git add -p file.py - Adição parcial de conteúdo. + +Para aqueles momentos de "fiz duas alterações, de dois issues diferentes". + +--- [left] [shading-opacity=1.0] +@@ -485,7 +485,7 @@ class GerenciadorForm(TestCase): + """ + + curso = EntidadeCursoCurriculoGraduacao.objects.get(pk=1001) +- ano_periodo = AnoPeriodoGraduacao.objects.get(pk=1) ++ ano_periodo = AnoPeriodoGraduacao.objects.get(pk=1001) + + # Populando o field com None. + dados = {'pessoa_fisica': u'5', +Stage this hunk [y,n,q,a,d,/,e,?]? + +(Ainda útil para aquela última verificada antes de comitar.) + +--- [../_images/boycrying.jpg] + +Mas eu uso SVN! + +--- [../_images/baby-smile.jpg] + +GIT-SVN to the rescue! + +--- + +GIT-SVN cria e mantém um repositório GIT usando um servidor SVN. + +Alguns comandos mudam. + +--- + +git add continua igual (ainda com -p) + +git commit continua igual. + +Pelo menos isso... + +--- + +Criar o repositório GIT a partir do SVN: + +git svn clone http://blahblahblah.com/blah/blah/branch/blah + +--- + +git svn clone https://ucsvirtual.ucs.br/sesi/svn/yoshi/branches/12266 + + A yoshi/google/alias/tests.py + A yoshi/google/alias/models.py + A yoshi/google/alias/urls.py + A yoshi/google/alias/forms.py + A yoshi/urls.py + A requirement.txt +W: +empty_dir: yoshi/autenticacao/esqueceu_senha/fixtures +W: +empty_dir: yoshi/autenticacao/login/templates/busca +W: +empty_dir: yoshi/core/busca/templates +W: +empty_dir: yoshi/core/geral/templates/search +W: +empty_dir: yoshi/templates/agenda/busca +r4531 = b3667a084e7d69080e0f1c7235b94dab9cb5a326 (refs/remotes/git-svn) + A yoshi/financeiro/cadastro_beneficio/__init__.py + A yoshi/financeiro/cadastro_beneficio/models.py + A yoshi/financeiro/__init__.py +r4532 = 65ce3a96d11c13d0be24836af3a276561885118c (refs/remotes/git-svn) + M yoshi/settings.py + M yoshi/modulos.py + + +--- + +Pro-tip: Isso clona o repositório e todos os commits. + +Portanto, não se alarme. + +--- + +git svn rebase = svn up + +Na verdade, irá recuperar tudo que foi feito desde a última revisão +e aplicar os commits locais, nessa ordem. + +--- [top] [clone.png] [fit] + +Visão a partir do clone: + +--- [top] [rebase.png] [fit] + +Visão depois do rebase: + +--- + +git svn dcommit = svn commit + +Faz o "upload" dos commits locais para o servidor. + +--- + +Ok, qual a vantagem no final? + +--- + +Tu pode fazer vários commits sem mandar pro servidor. +"Meu branch pode estar quebrado totalmente e ninguém vai ver!" diff --git a/git-gitsvn/rebase.png b/git-gitsvn/rebase.png new file mode 100644 index 0000000..ab55fcb Binary files /dev/null and b/git-gitsvn/rebase.png differ