diff --git a/git-gitsvn/clone.png b/_images/clone.png similarity index 100% rename from git-gitsvn/clone.png rename to _images/clone.png diff --git a/git-gitsvn/clone2.png b/_images/clone2.png similarity index 100% rename from git-gitsvn/clone2.png rename to _images/clone2.png diff --git a/_images/gitadd.png b/_images/gitadd.png new file mode 100644 index 0000000..308c1e0 Binary files /dev/null and b/_images/gitadd.png differ diff --git a/git-gitsvn/rebase.png b/_images/rebase.png similarity index 100% rename from git-gitsvn/rebase.png rename to _images/rebase.png diff --git a/git-gitsvn/rebase2.png b/_images/rebase2.png similarity index 100% rename from git-gitsvn/rebase2.png rename to _images/rebase2.png diff --git a/git-gitsvn/clone.dia b/git-gitsvn/clone.dia deleted file mode 100644 index 52d903b..0000000 Binary files a/git-gitsvn/clone.dia and /dev/null differ diff --git a/git-gitsvn/git-gitsvn.pin b/git-gitsvn/git-gitsvn.pin deleted file mode 100644 index 0b82f4f..0000000 --- a/git-gitsvn/git-gitsvn.pin +++ /dev/null @@ -1,218 +0,0 @@ -#!/usr/bin/env pinpoint -# default style - -[../_images/Sketch27014711.png] -[font=Sans 100px] -[fill] -[center] -[text-align=left] - -# presentation starts here ---- [font=Serif 100px] [text-align=center] - -GIT + GIT-SVN - ---- - -GIT Básico - ---- - -O "index" - -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. - ---- - -git add file.py - Coloca as alterações do arquivo no "index". - -(Se o arquivo nunca esteve no "index", vai o arquivo inteiro). - ---- - -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 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 no index. - -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.) - ---- - -git stash - -* "Guarda" tudo que não foi commitado em separado. -* git stash pop reaplica as alterações guardadas. - ---- - -git log - -Igual ao svn log, mas não precisa de less. - -git log --raw: Mostra inclusive os arquivos alterados. - -git log -u: Mostra inclusive o que foi alterado. - ---- - -git bisect - -Tenta descobrir qual commit introduziu um bug. - -* Mostra as alterações em um ponto da história dos logs. -* "O bug está aqui?" - * Se sim, retorna revisões. - * Se não, avança. - -(Percorre as revisões como se fosse uma árvore binária.) - ---- [../_images/grinch-smile.jpg] - -Podem ser feitos vários commits sem que sejam enviados ao servidor. - -"Meu branch pode estar quebrado totalmente e ninguém vai ver!" - ---- - -Parênteses - -As ferramentas de code review para GIT são muito melhores que -as dos outros SCVs. - ---- [../_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] [clone2.png] - -Visão a partir do clone: - ---- [top] [rebase2.png] - -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? - ---- - -* Commits mais granulares. -* Branches locais. - * GIT Flow para um fluxo de trabalho conveniente. -* git stash -* Commit mesmo quando a rede está fora. -* Compatível com qualquer versão do SVN. - ---- [../_images/tumblr_m3hn8kf49c1ropetlo1_400.jpg] - -Novo workflow: - -1. Alterar código. -2. git add alteração. -3. git svn rebase para verificar alterações upstream. -4. git commit. -5. Não satisfeito? Goto 1. -6. Tudo Ok? git svn dcommit - ---- [../_images/thats-all-folks.jpg] - diff --git a/gitsvn.html b/gitsvn.html new file mode 100644 index 0000000..246de42 --- /dev/null +++ b/gitsvn.html @@ -0,0 +1,338 @@ + + + +
+ + +