aboutsummaryrefslogtreecommitdiff
path: root/aulas
diff options
context:
space:
mode:
Diffstat (limited to 'aulas')
-rw-r--r--aulas/ambientes.rst105
-rw-r--r--aulas/reinventando.rst1
-rw-r--r--aulas/versionamento.rst104
3 files changed, 139 insertions, 71 deletions
diff --git a/aulas/ambientes.rst b/aulas/ambientes.rst
index 7499b02..1a4f50b 100644
--- a/aulas/ambientes.rst
+++ b/aulas/ambientes.rst
@@ -42,46 +42,78 @@ Roteiro do screncast:
#. Abrir alguns editores de texto e IDEs e seus sites.
2.2 - Emulador de terminal
-~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------
+
+2.2 - O que é?
+~~~~~~~~~~~~~~
- Despacha comandos textuais.
- Comandos podem ser automatizados em scripts.
- Comandos básicos de UNIX usados no curso.
- Atalhos do terminal (histórico de comandos, limpeza da tela e movimentos do cursor).
-- Shells: bash, zsh, php, python, rvm, node, etc!
+- Shells: bash, zsh, php, python, irb, nodejs, etc!
+
+Roteiro do screencast:
+
+#. Mostrar entrada de comandos no terminal.
+#. Mostrar outros shells.
+
+2.2 - Comandos básicos: navegação
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Roteiro do screencast:
::
+ # Sintaxe de comandos
+ comando [opcoes] <argumento-obrigatorio> [argumento-opcional]
+
# Navegação
pwd
- ls
- ls /
- ls ..
- ls ~
- cd
- cd -
cd ..
+ pwd
+ cd
cd /
+ cd -
+
+2.2 - Comandos básicos: arquivos e pastas
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Roteiro do screencast:
+
+::
# Criando e apagando arquivos e pastas
touch arquivo
mkdir pasta
- rm arquivo
- rmdir pasta
+
+ # Listando pastas
+ ls
+ ls /
+ ls ..
+ ls ~
# Movendo e copiando arquivos
cp arquivo pasta
mv pasta pasta.20151112
- rm arquivo
# Criando atalhos
ln pasta.20151112 pasta.latest
ls -l
- # Procurando ajuda!
- man ls
+ # Apagando arquivos e pastas
+ rm arquivo
+ rm pasta.20151112
+ rm -r pasta.20151112
+ ls -l
+ rm pasta.latest
+
+2.2 - Comandos básicos: dominando o sistema!
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Roteiro do screencast:
+
+::
# Quem sou eu?
whoami
@@ -90,7 +122,27 @@ Roteiro do screencast:
sudo whoami
# Instalando um programa
- sudo apt-get install git
+ sudo apt-get install tree
+
+ # Sistema de arquivos
+ tree
+ tree /
+ tree -d /
+
+ # Entrada e saida padrao
+ tree -d / > saida.log
+ less saida.log
+
+ # Dutos
+ tree -d / | less
+
+ # Processos
+ ps
+ ps -A
+ pstree | less
+
+ # Procurando ajuda!
+ man ls
2.3 - Fluxo de trabalho
-----------------------
@@ -98,6 +150,7 @@ Roteiro do screencast:
2.3 - Básico
~~~~~~~~~~~~
+- Seu desktop funciona como uma bancada de trabalho: mantenha-o sempre arrumado, limpando a sujeira toda a vez que finalizar um trabalho.
- Diário de bordo: de um arquivo de texto a um blog sobre desenvolvimento (o próprio blogático, no nosso caso!).
- Organização de pastas.
- Backups.
@@ -123,16 +176,16 @@ Roteiro do screencast:
::
- # Criando a estrutura básica do seu projeto
- cd ~/projetos/blogatico
- touch README.md ChangeLog TODO.md
+ # Criando a estrutura básica do seu projeto
+ cd ~/projetos/blogatico
+ touch README.md ChangeLog TODO.md
+ gedit README.md
2.3 - Sistemas de tickets (tarefas)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Kanban.
* Arquivo TODO em formatos plaintext, Markdown, etc.
-* Um arquivo por tarefa em pastas `open` e `closed`.
* Taskwarrior ou similar.
* Aplicação própria (Trac, etc)
* TODOs and FIXMEs ao longo do código (em última instância).
@@ -141,7 +194,7 @@ Roteiro do screncast:
::
- gedit README.md TODO.md
+ gedit TODO.md
Imagens:
@@ -167,14 +220,24 @@ Roteiro do screencast:
touch bin/build
# Não funciona sem permissão de execução!
- ./bin/build
+ exec bin/build
# Agora vai!
chmod +x bin/build
+ exec bin/build
./bin/build
+ # Editando
gedit bin/build
+ # Criando o conteúdo inicial
+ mkdir www
+ cd www
+ touch index.md
+
+ # Testando!
+ ../bin/build
+
2.4 - Atividades
----------------
@@ -191,3 +254,5 @@ Referências
- `Atom <https://atom.io/>`_.
- `Lime Text Editor <http://limetext.org/>`_.
+- `Guia Foca Linux – Site Oficial | Site oficial do guia Foca GNU/Linux, baixe gratuitamente! <http://www.guiafoca.org/>`_.
+- `jgm/pandoc-templates · GitHub <https://github.com/jgm/pandoc-templates>`_.
diff --git a/aulas/reinventando.rst b/aulas/reinventando.rst
index 16086d4..1659e30 100644
--- a/aulas/reinventando.rst
+++ b/aulas/reinventando.rst
@@ -4,6 +4,7 @@
6.1 - Patterns
--------------
+* Separando código de dados.
* Desacoplamento.
* Filosofia UNIX:
* Pequenos softwares/bibliotecas.
diff --git a/aulas/versionamento.rst b/aulas/versionamento.rst
index 63b18b2..ff1d844 100644
--- a/aulas/versionamento.rst
+++ b/aulas/versionamento.rst
@@ -77,8 +77,9 @@ Roteiro do screencast:
::
- git config --global user.name "Seu Nome"
- git config --global user.email "seu@email"
+ sudo apt-get install git
+ git config --global user.name "Meu Nome"
+ git config --global user.email "meu@email.tld"
4.3 - Repositórios
~~~~~~~~~~~~~~~~~~
@@ -90,13 +91,13 @@ Roteiro do screencast:
::
- # Adicionando nosso projeto no git
- cd ~/projetos/blogatico
- git init
+ # Adicionando nosso projeto no git
+ cd ~/projetos/blogatico
+ git init
- # Clonando um projeto existente
- cd ~/projetos/
- git clone https://github.com/rhatto/boaspraticas
+ # Clonando um projeto existente
+ cd ~/projetos/
+ git clone https://github.com/rhatto/boaspraticas
4.3 - Trabalhando no projeto
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -107,21 +108,22 @@ Roteiro do screencast:
::
- gedit README.md # edite seu arquivo
- git status
- git add README.md # em seguida edite mais um pouco
- git status
- git diff
- git commit -m "Primeira revisão"
- git add README.md # mudanças recentes adicionadas ao estágio de lançamento
- git commit -m "Segunda revisão"
- git commit -a -m "Terceira revisão" # coloca todas as mudanças no estágio e comete
-
- # Agora vamos programar um pouco...
- mkdir bin
- touch bin/build
- chmod +x bin/build
- gedit bin/build
+ cd ~/projetos/blogatico
+ gedit README.md # edite seu arquivo
+ git status
+ git add README.md # em seguida edite mais um pouco
+ git status
+ git diff
+ git commit -m "Primeira revisão"
+ git add README.md # mudanças recentes adicionadas ao estágio de lançamento
+ git commit -m "Segunda revisão"
+ git commit -a -m "Terceira revisão" # coloca todas as mudanças no estágio e comete
+
+ # Agora vamos programar um pouco...
+ mkdir bin
+ touch bin/build
+ chmod +x bin/build
+ gedit bin/build
Imagens:
@@ -144,10 +146,10 @@ Roteiro do screencast:
::
- cd ~/projetos/blogatico
- git log
- git cola
- gitk
+ cd ~/projetos/blogatico
+ git log
+ git cola
+ gitk
Imagens:
@@ -163,9 +165,9 @@ Roteiro do screencast:
::
- git commit --amend
- git revert
- git rebase
+ git commit --amend
+ git revert
+ git rebase
4.5 - Ramificações (branches e merges)
--------------------------------------
@@ -178,12 +180,12 @@ Roteiro do screencast:
::
- cd ~/projetos/blogatico
- git branch develop
- git checkout develop
- git commit
- git checkout master
- git merge develop
+ cd ~/projetos/blogatico
+ git branch develop
+ git checkout develop
+ git commit
+ git checkout master
+ git merge develop
4.6 - Usando o git-flow
-----------------------
@@ -201,9 +203,9 @@ Roteiro do screencast:
::
- cd ~/projetos/blogatico
- git flow init
- git flow feature start doc
+ cd ~/projetos/blogatico
+ git flow init
+ git flow feature start doc
4.7 - Submódulos
----------------
@@ -216,20 +218,20 @@ Roteiro do screencast:
::
- # No repositorio
- cd ~/projetos/blogatico
- git submodule add https://github.com/dhg/Skeleton skeleton
- git commit -a -m "Adiciona skeleton"
+ # No repositorio
+ cd ~/projetos/blogatico
+ git submodule add https://github.com/dhg/Skeleton skeleton
+ git commit -a -m "Adiciona skeleton"
- # Clonando o repositorio noutro local
- cd ..
- git clone projeto projeto-clonado
- cd projeto-clonado
- git submodule update --init
+ # Clonando o repositorio noutro local
+ cd ..
+ git clone projeto projeto-clonado
+ cd projeto-clonado
+ git submodule update --init
- # Ou:
- cd ..
- git clone --recursive projeto projeto-clonado
+ # Ou:
+ cd ..
+ git clone --recursive projeto projeto-clonado
4.8 - Social coding (gitlab, github, etc)
-----------------------------------------