Programação Multiplataforma em
Ambiente Web
Ambientes de desenvolvimento, prontos:
WAMP
Windows - Apache - MySQL - PHP
LAMP
Linux - Apache - MySQL - PHP
WINGINX
Windows - PHP - Node.js - Nginx - MySQL - MongoDB - Redis -
memcached
DevOps
DevOps (amálgama de Desenvolvedor e Operações) é uma
metodologia de desenvolvimento de software que explora a
comunicação, colaboração e integração entre desenvolvedores de
software e outros pro ssionais de TI (Tecnologia da Informação).
DevOps é a reação à interdependência entre desenvolvimento de
software e operações de TI. Pretende ajudar organizações a produzir
software e serviços rapidamente.
DevOps
Windows / Linux
Sistema Operacional é um programa ou conjunto de programas que
gerencia os recursos do sistema, entre eles: memória, processador,
sistema de arquivo, sistema de armazenamento, softwares. Possuindo
uma interface de comunicação entre o usuário e o computador.
Sistemas Operacionais
Apache
É o servidor web livre mais utilizado do mundo.
Servidor Apache - Wikipédia
Servidor Web
É um software, que serve páginas da web. Aguarda pedidos de
navegadores de internet (clientes) e responde enviando os dados
solicitados/necessários. Essa interação cliente-servidor é a marca
registrada de como a web funciona.
Servidor Web - Wikipédia
Nginx
Nginx [engine x] é um servidor proxy HTTP e reverso, bem como um
servidor de proxy de email, escrito por Igor Sysoev desde 2005.
O Nginx é um servidor web rápido, leve, e com inúmeras possibilidades
de con guração para melhor performance.
Nginx - Wikipédia
MySQL
É um sistema de gerenciamento de banco de dados (SGBD), que utiliza
a linguagem SQL como interface. É atualmente um dos bancos de
dados mais populares, com mais de 10 milhões de instalações pelo
mundo.
MySQL - Wikipédia
MariaDB
MariaDB é um banco de dados que surgiu como fork do MySQL, criado
pelo próprio fundador do projeto após sua aquisição pela Oracle.
Maria DB - Wikipédia
PHP
PHP (um acrônimo recursivo para "PHP: Hypertext Preprocessor",
originalmente Personal Home Page) é uma linguagem interpretada
livre, usada originalmente apenas para o desenvolvimento de
aplicações presentes e atuantes no lado do servidor, capazes de gerar
conteúdo dinâmico na World Wide Web.
PHP - Wikipédia
XDebug
Uma das ferramentas mais úteis no desenvolvimento de software é um
depurador apropriado. Ele permite que você trace a execução do seu
código e monitore os itens na pilha de execução. XDebug, um
depurador de PHP, pode ser utilizado por várias IDEs para prover
breakpoints e inspecionar a pilha. Ele também lhe permite que
ferramentas como PHPUnit e KCacheGrind realizem análise de
cobertura e per s de código.
PHP Right Way - XDebug
Phalcon
Framework PHP full-stack entregue como extensão C.
Phalcon
Servidor Web (Windows)
Apache (https://www.apache.org/dyn/closer.cgi)
MySQL (https://www.mysql.com/)
PHP (https://secure.php.net/)
PHP - XDebug (https://xdebug.org/)
Nginx (https://www.nginx.com/)
MariaDB (https://mariadb.org/)
Receita
Windows 7 (x64)
Apache (httpd-2.4.25-x64-vc14-r1.zip) (E:apache)
PHP 7.1.2 (VC14 x64 Thread Safe)
XDebug (php_xdebug-2.5.0-7.1-vc14-x86_64.dll)
MySQL (mysql-installer-community-5.7.17.0)
Nginx (nginx/Windows-1.10.3)
MariaDB (mariadb-10.1.21-winx64.msi)
Instalação do Apache
Download do Apache (httpd-2.4.25-x64-vc14-r1.zip)
Descompactar no diretório E:/apache
Criar serviço para o Apache iniciar com o Windows, na linha de
comando dentro da pasta de instalação E:/apache , digite
httpd.exe -k install -n "Apache 2.4"
Arquivo principal de con guração do Apache: httpd.conf
Instalação do PHP
Download do PHP 7.1.2 (VC14 x64 Thread Safe)
Descompactar no diretório E:/apache/php
Copiar o arquivo php.ini-development para php.ini
Arquivo principal de con guração do PHP: php.ini
Con guração do PHP no Apache
Arquivo htttp.conf (E:/apache/conf)
182 LoadModule php7_module "E:/apache/php/php7apache2_4.dll"
184 PHPIniDir "E:/apache/php"
284 DirectoryIndex index.php index.html
436 AddHandler application/x-httpd-php .php
437 AddType application/x-httpd-php .php .html
Con guração do XDebug no PHP
Download php_xdebug-2.5.0-7.1-vc14-x86_64.dll
Mover para a pasta de extensões do PHP (E:apachephpext)
Copiar o arquivo php.ini-development para php.ini
Adicionar a linha abaixo no arquivo php.ini
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
zend_extension = E:apachephpextphp_xdebug-2.5.0-7.1-vc14-x86_64.dll
Instalação do MySQL
Download do MySQL (mysql-installer-community-5.7.17.0)
Instalar o componente MySQL Server
Utilizar a opção Development Machine
Instalação do Phalcon
Versão ainda não compatível com PHP 7.1
.htaccess
Arquivo de exemplo comentado
Instalação do Nginx
Download NGINX 1.10.3, descompactar em E:/nginx
Pela linha de comando entrar na pasta E:/nginx
Digitar o comando start nginx
Pode-se adicionar o caminho E:/nginx na variável de ambiente PATH
Comandos NGINX
nginx -s stop > fast shutdown
nginx -s quit > graceful shutdown
nginx -s reload > starting new worker processes with a new configuration
nginx -s reopen > re-opening log files
Apache e NGINX utilizam a mesma porta para funcionamento 80
Con guração do PHP no Nginx
Download PHP 7.1 TS, descompactar em E:/nginx/php
Copiar arquivo php.ini-production ou php.ini-development para
php.ini
Diferença entre PHP e PHP CGI
Con guração do PHP no Nginx
Alterar o arquivo nginx.conf (E:/nginx/conf)
45 index index.php index.html index.htm;
Descomentar e alterar
65 location ~ .php$ {
66 root html;
67 fastcgi_pass 127.0.0.1:9000;
68 fastcgi_index index.php;
69 fastcgi_param SCRIPT_FILENAME E:/nginx/html$fastcgi_script_name;
70 include fastcgi_params;
71 }
Con guração do PHP no Nginx
Criar arquivo para iniciar o Nginx e PHP
@ECHO OFF
start E:nginxnginx.exe
start E:nginxphpphp-cgi.exe -b 127.0.0.1:9000 -c E:nginxphpphp.ini
echo .
echo ..
echo ...
echo Starting nginx
EXIT
Con guração do PHP no Nginx
Criar arquivo para parar o Nginx e PHP
@ECHO OFF
taskkill /f /IM nginx.exe
taskkill /f /IM php-cgi.exe
EXIT
MariaDB
Download do MariaDB (mariadb-10.1.21-winx64.msi)
Instalação padrão
MySQL e MariaDB utilizam a mesma porta para funcionamento 3306
Servidor Web (Linux)
Distribuições (https://pt.wikipedia.org/wiki/Distribuição_Linux)
Comandos básicos do linux (https://goo.gl/CXbi0w)
Debian
Slackware
Red Hat
Servidor Web (Debian)
Atualizar repositórios
apt-get update
Apache
apt-get install apache2 apache2-doc -y
Arquivo de con guração do Apache "/etc/apache2/apache2.conf"
Liberar acesso para root conectar
nano /etc/ssh/sshd_config
PermitRootLogin yes
Servidor Web (Debian)
Reiniciar Acessar via SSH (Bitvise)
Servidor Web (Debian)
Deixando o Terminal colorido
Editar o arquivo ~/.bashrc
Descomentar as linhas
export LS_OPTIONS='--color=auto'
eval "`dircolors`"
alias ls='ls $LS_OPTIONS'
Servidor Web (Debian)
Deixando o Terminal colorido
Alterar a linha
PS1='${debian_chroot:+($debian_chroot)}[033[01;32m]u@h
[033[00m]:[033[01;34m]w[033[00m]$ '
Executar o comando exec bash
Servidor Web (Debian)
Ajustando o Timezone
apt-get install dbus -y
timedatectl set-timezone America/Sao_Paulo
Servidor Web (Debian)
Adicionar URL de repositórios
echo "deb http://packages.dotdeb.org jessie all" | tee -a
/etc/apt/sources.list.d/dotdeb.list
echo "deb-src http://packages.dotdeb.org jessie all" | tee -a
/etc/apt/sources.list.d/dotdeb.list
wget -qO - http://www.dotdeb.org/dotdeb.gpg | apt-key add -
Atualizar repositórios
apt-get update
Servidor Web (Debian)
Instalação do PHP 7
apt-get install php7.0-cli php7.0-curl php7.0-dev php7.0-zip php7.0-gd
php7.0-xml php7.0-mysql php7.0-mcrypt php7.0-mbstring php7.0-opcache
php7.0-imap php7.0-mongodb php7.0-bz2 php7.0-xdebug php7.0-intl php7.0-
xmlrpc php7.0-json php7.0-common php7.0-sqlite3 libapache2-mod-php7.0 -y
Servidor Web (Debian)
Instalação do MySQL
apt-get install mysql-server -y > quando solicitar senha utilizar
<enter>
Via linha de comando entrar no mysql, com o comando mysql e
executar a query
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '';
Alterar o arquivo /etc/mysql/my.cnf
47 #bind-address = 127.0.0.1
Reiniciar o serviço do mysql com o comando service mysql restart
Instalação do Composer
Instalar o CURL apt-get install curl
Instalar o Composer
curl -sS https://getcomposer.org/installer | sudo php -- --install-
dir=/usr/local/bin --filename=composer
Instalação do Git
Execute o comando apt-get install git -y
Instalação do Nodejs
Execute o comando apt-get install nodejs -y
Instalação do NPM
Execute o comando apt-get install npm -y
Instalação de pacotes npm
npm install bower -g
npm install grunt-cli -g
App
Git
Sistema de Controle de Versão
Organização
Trabalho em equipe
Segurança
Release (http://semver.org/)
Criado por Linus Torvalds (2005)
Sistema descentralizado
Github - Git Cheat Sheet
Con gurando Git
Instalação (https://git-scm.com/ - Git-2.12.1-64-bit)
git config --global user.name "Nome do usuário"
git config --global user.email "email@usuario.com"
git config --global color.ui true
Criando um repositório:
mkdir <diretorio>
cd <diretorio>
git init
Usando Git
Criar um arquivo <arquivo>
Primeiro estágio - Untracked Files
git status
Segundo estágio - Changes to be committed
git add <arquivo>
git add .
Terceiro estágio - Committed
git commit -m "<mensagem>"
Veri cando histórico de commits
git log
Git - log
Veri cando log
git log -p -2
git log --stat
git log --pretty=oneline
git log --pretty=format:"%h - %an, %ar : %s"
git log --since=2.days
git log --since=2.weeks
Git - ignore
Ignorando arquivos
Criar um arquivo .gitignore na pasta raiz do projeto e adicionar todos
os arquivos ou pastas, que deverão ser ignorados no versionamento.
.idea/
gitignore.txt
/tmp/cache/persistent/*
!/tmp/cache/persistent/empty
Git - checkout e HEAD
O reset HEAD serve para voltar untracked les e o checkout para voltar
arquivos que já foram adicionados e estão modi cados.
git reset HEAD arquivo2.txt
git checkout a1e8fb5 arquivo3.txt
Git - HEAD
git reset HEAD~1-n
git reset HEAD~1 --soft
git reset HEAD~1 --hard
Soft: remove todos os commits posteriores voltando os para o
estágio anterior que é changed to be commited, mas ele os mantem
na pasta para que possa ser adicionado novamente.
Hard: remove todos os commits posteriores a versão acessada e
também os arquivos que a eles perteciam.
Git - checkout
Voltando versões
git checkout a7e09ab07b1f6622a49ebfb59fc76c77358d6caf
git checkout a7e09ab
Git - checkout
Voltando versões
git checkout a7e09ab07b1f6622a49ebfb59fc76c77358d6caf
git checkout a7e09ab
Git - branch
Branch principal master
Git ow
Git - branch
Veri cando branches: git branch
Veri cando branches (locais e remotos): git branch -a
Criando branch: git checkout -b <branch>
Trocando de branch: git checkout <branch>
Enviar branch para origem: git push -u origin <branch>
Ligando branch remoto com local:
git checkout -b <branch> origin/<branch>
Git - push / pull
Atualizar arquivos locais: git pull
Enviar commits para servidor remoto: git push
Antes de enviar commits, sempre atualizar arquivos locais antes
Indicando repositório e branch: git pull origin master
Git - Gerando chave
Gerar chave com o comando ssh-keygen (*não utilizar senha)
Abrir o arquivo id_rsa.pub e copiar o conteúdo
No Github: Settings > SSH and GPG keys
Clique no botão New SSH Key
Colocar um título e colar o conteúdo
Git - clone
Clonar/Copiar um repositório
git clone git@github.com:<usuario>/<repositorio>.git <pasta>
Git - remote
Adicionando repositório remoto
git remote add <nomecurto> git@github.com:<usuario>/<repositorio>.git
Geralmente se usa o nome curto: upstream
Git - Sincronizando com remote
Atualizar seu repositório com alterações de remoto
git fetch upstream
git checkout <branch>
git merge upstream/<branch>
Veri car se ocorreram erros no merge
Git - tag
Geração de tags
Gerar uma tag git tag <tag> (0.1.0)
Listar tags git tag -l
Enviar para repositório git push origin master --tags
Versionamento semântico
Markdown
Github Markdown
Coffe time

Programação Multiplataforma em Ambiente Web

  • 1.
  • 2.
    Ambientes de desenvolvimento,prontos: WAMP Windows - Apache - MySQL - PHP LAMP Linux - Apache - MySQL - PHP WINGINX Windows - PHP - Node.js - Nginx - MySQL - MongoDB - Redis - memcached
  • 3.
    DevOps DevOps (amálgama deDesenvolvedor e Operações) é uma metodologia de desenvolvimento de software que explora a comunicação, colaboração e integração entre desenvolvedores de software e outros pro ssionais de TI (Tecnologia da Informação). DevOps é a reação à interdependência entre desenvolvimento de software e operações de TI. Pretende ajudar organizações a produzir software e serviços rapidamente. DevOps
  • 4.
    Windows / Linux SistemaOperacional é um programa ou conjunto de programas que gerencia os recursos do sistema, entre eles: memória, processador, sistema de arquivo, sistema de armazenamento, softwares. Possuindo uma interface de comunicação entre o usuário e o computador. Sistemas Operacionais
  • 5.
    Apache É o servidorweb livre mais utilizado do mundo. Servidor Apache - Wikipédia Servidor Web É um software, que serve páginas da web. Aguarda pedidos de navegadores de internet (clientes) e responde enviando os dados solicitados/necessários. Essa interação cliente-servidor é a marca registrada de como a web funciona. Servidor Web - Wikipédia
  • 6.
    Nginx Nginx [engine x]é um servidor proxy HTTP e reverso, bem como um servidor de proxy de email, escrito por Igor Sysoev desde 2005. O Nginx é um servidor web rápido, leve, e com inúmeras possibilidades de con guração para melhor performance. Nginx - Wikipédia
  • 7.
    MySQL É um sistemade gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL como interface. É atualmente um dos bancos de dados mais populares, com mais de 10 milhões de instalações pelo mundo. MySQL - Wikipédia
  • 8.
    MariaDB MariaDB é umbanco de dados que surgiu como fork do MySQL, criado pelo próprio fundador do projeto após sua aquisição pela Oracle. Maria DB - Wikipédia
  • 9.
    PHP PHP (um acrônimorecursivo para "PHP: Hypertext Preprocessor", originalmente Personal Home Page) é uma linguagem interpretada livre, usada originalmente apenas para o desenvolvimento de aplicações presentes e atuantes no lado do servidor, capazes de gerar conteúdo dinâmico na World Wide Web. PHP - Wikipédia
  • 10.
    XDebug Uma das ferramentasmais úteis no desenvolvimento de software é um depurador apropriado. Ele permite que você trace a execução do seu código e monitore os itens na pilha de execução. XDebug, um depurador de PHP, pode ser utilizado por várias IDEs para prover breakpoints e inspecionar a pilha. Ele também lhe permite que ferramentas como PHPUnit e KCacheGrind realizem análise de cobertura e per s de código. PHP Right Way - XDebug
  • 11.
    Phalcon Framework PHP full-stackentregue como extensão C. Phalcon
  • 12.
    Servidor Web (Windows) Apache(https://www.apache.org/dyn/closer.cgi) MySQL (https://www.mysql.com/) PHP (https://secure.php.net/) PHP - XDebug (https://xdebug.org/) Nginx (https://www.nginx.com/) MariaDB (https://mariadb.org/)
  • 13.
    Receita Windows 7 (x64) Apache(httpd-2.4.25-x64-vc14-r1.zip) (E:apache) PHP 7.1.2 (VC14 x64 Thread Safe) XDebug (php_xdebug-2.5.0-7.1-vc14-x86_64.dll) MySQL (mysql-installer-community-5.7.17.0) Nginx (nginx/Windows-1.10.3) MariaDB (mariadb-10.1.21-winx64.msi)
  • 14.
    Instalação do Apache Downloaddo Apache (httpd-2.4.25-x64-vc14-r1.zip) Descompactar no diretório E:/apache Criar serviço para o Apache iniciar com o Windows, na linha de comando dentro da pasta de instalação E:/apache , digite httpd.exe -k install -n "Apache 2.4" Arquivo principal de con guração do Apache: httpd.conf
  • 15.
    Instalação do PHP Downloaddo PHP 7.1.2 (VC14 x64 Thread Safe) Descompactar no diretório E:/apache/php Copiar o arquivo php.ini-development para php.ini Arquivo principal de con guração do PHP: php.ini
  • 16.
    Con guração doPHP no Apache Arquivo htttp.conf (E:/apache/conf) 182 LoadModule php7_module "E:/apache/php/php7apache2_4.dll" 184 PHPIniDir "E:/apache/php" 284 DirectoryIndex index.php index.html 436 AddHandler application/x-httpd-php .php 437 AddType application/x-httpd-php .php .html
  • 17.
    Con guração doXDebug no PHP Download php_xdebug-2.5.0-7.1-vc14-x86_64.dll Mover para a pasta de extensões do PHP (E:apachephpext) Copiar o arquivo php.ini-development para php.ini Adicionar a linha abaixo no arquivo php.ini xdebug.remote_enable=1 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=127.0.0.1 xdebug.remote_port=9000 zend_extension = E:apachephpextphp_xdebug-2.5.0-7.1-vc14-x86_64.dll
  • 18.
    Instalação do MySQL Downloaddo MySQL (mysql-installer-community-5.7.17.0) Instalar o componente MySQL Server Utilizar a opção Development Machine
  • 19.
    Instalação do Phalcon Versãoainda não compatível com PHP 7.1
  • 20.
  • 21.
    Instalação do Nginx DownloadNGINX 1.10.3, descompactar em E:/nginx Pela linha de comando entrar na pasta E:/nginx Digitar o comando start nginx Pode-se adicionar o caminho E:/nginx na variável de ambiente PATH Comandos NGINX nginx -s stop > fast shutdown nginx -s quit > graceful shutdown nginx -s reload > starting new worker processes with a new configuration nginx -s reopen > re-opening log files Apache e NGINX utilizam a mesma porta para funcionamento 80
  • 22.
    Con guração doPHP no Nginx Download PHP 7.1 TS, descompactar em E:/nginx/php Copiar arquivo php.ini-production ou php.ini-development para php.ini Diferença entre PHP e PHP CGI
  • 23.
    Con guração doPHP no Nginx Alterar o arquivo nginx.conf (E:/nginx/conf) 45 index index.php index.html index.htm; Descomentar e alterar 65 location ~ .php$ { 66 root html; 67 fastcgi_pass 127.0.0.1:9000; 68 fastcgi_index index.php; 69 fastcgi_param SCRIPT_FILENAME E:/nginx/html$fastcgi_script_name; 70 include fastcgi_params; 71 }
  • 24.
    Con guração doPHP no Nginx Criar arquivo para iniciar o Nginx e PHP @ECHO OFF start E:nginxnginx.exe start E:nginxphpphp-cgi.exe -b 127.0.0.1:9000 -c E:nginxphpphp.ini echo . echo .. echo ... echo Starting nginx EXIT
  • 25.
    Con guração doPHP no Nginx Criar arquivo para parar o Nginx e PHP @ECHO OFF taskkill /f /IM nginx.exe taskkill /f /IM php-cgi.exe EXIT
  • 26.
    MariaDB Download do MariaDB(mariadb-10.1.21-winx64.msi) Instalação padrão MySQL e MariaDB utilizam a mesma porta para funcionamento 3306
  • 27.
    Servidor Web (Linux) Distribuições(https://pt.wikipedia.org/wiki/Distribuição_Linux) Comandos básicos do linux (https://goo.gl/CXbi0w) Debian Slackware Red Hat
  • 28.
    Servidor Web (Debian) Atualizarrepositórios apt-get update Apache apt-get install apache2 apache2-doc -y Arquivo de con guração do Apache "/etc/apache2/apache2.conf" Liberar acesso para root conectar nano /etc/ssh/sshd_config PermitRootLogin yes
  • 29.
    Servidor Web (Debian) ReiniciarAcessar via SSH (Bitvise)
  • 30.
    Servidor Web (Debian) Deixandoo Terminal colorido Editar o arquivo ~/.bashrc Descomentar as linhas export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS'
  • 31.
    Servidor Web (Debian) Deixandoo Terminal colorido Alterar a linha PS1='${debian_chroot:+($debian_chroot)}[033[01;32m]u@h [033[00m]:[033[01;34m]w[033[00m]$ ' Executar o comando exec bash
  • 32.
    Servidor Web (Debian) Ajustandoo Timezone apt-get install dbus -y timedatectl set-timezone America/Sao_Paulo
  • 33.
    Servidor Web (Debian) AdicionarURL de repositórios echo "deb http://packages.dotdeb.org jessie all" | tee -a /etc/apt/sources.list.d/dotdeb.list echo "deb-src http://packages.dotdeb.org jessie all" | tee -a /etc/apt/sources.list.d/dotdeb.list wget -qO - http://www.dotdeb.org/dotdeb.gpg | apt-key add - Atualizar repositórios apt-get update
  • 34.
    Servidor Web (Debian) Instalaçãodo PHP 7 apt-get install php7.0-cli php7.0-curl php7.0-dev php7.0-zip php7.0-gd php7.0-xml php7.0-mysql php7.0-mcrypt php7.0-mbstring php7.0-opcache php7.0-imap php7.0-mongodb php7.0-bz2 php7.0-xdebug php7.0-intl php7.0- xmlrpc php7.0-json php7.0-common php7.0-sqlite3 libapache2-mod-php7.0 -y
  • 35.
    Servidor Web (Debian) Instalaçãodo MySQL apt-get install mysql-server -y > quando solicitar senha utilizar <enter> Via linha de comando entrar no mysql, com o comando mysql e executar a query GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ''; Alterar o arquivo /etc/mysql/my.cnf 47 #bind-address = 127.0.0.1 Reiniciar o serviço do mysql com o comando service mysql restart
  • 36.
    Instalação do Composer Instalaro CURL apt-get install curl Instalar o Composer curl -sS https://getcomposer.org/installer | sudo php -- --install- dir=/usr/local/bin --filename=composer
  • 37.
    Instalação do Git Executeo comando apt-get install git -y
  • 38.
    Instalação do Nodejs Executeo comando apt-get install nodejs -y
  • 39.
    Instalação do NPM Executeo comando apt-get install npm -y Instalação de pacotes npm npm install bower -g npm install grunt-cli -g
  • 40.
  • 41.
    Git Sistema de Controlede Versão Organização Trabalho em equipe Segurança Release (http://semver.org/) Criado por Linus Torvalds (2005) Sistema descentralizado Github - Git Cheat Sheet
  • 42.
    Con gurando Git Instalação(https://git-scm.com/ - Git-2.12.1-64-bit) git config --global user.name "Nome do usuário" git config --global user.email "email@usuario.com" git config --global color.ui true Criando um repositório: mkdir <diretorio> cd <diretorio> git init
  • 43.
    Usando Git Criar umarquivo <arquivo> Primeiro estágio - Untracked Files git status Segundo estágio - Changes to be committed git add <arquivo> git add . Terceiro estágio - Committed git commit -m "<mensagem>" Veri cando histórico de commits git log
  • 44.
    Git - log Vericando log git log -p -2 git log --stat git log --pretty=oneline git log --pretty=format:"%h - %an, %ar : %s" git log --since=2.days git log --since=2.weeks
  • 45.
    Git - ignore Ignorandoarquivos Criar um arquivo .gitignore na pasta raiz do projeto e adicionar todos os arquivos ou pastas, que deverão ser ignorados no versionamento. .idea/ gitignore.txt /tmp/cache/persistent/* !/tmp/cache/persistent/empty
  • 46.
    Git - checkoute HEAD O reset HEAD serve para voltar untracked les e o checkout para voltar arquivos que já foram adicionados e estão modi cados. git reset HEAD arquivo2.txt git checkout a1e8fb5 arquivo3.txt
  • 47.
    Git - HEAD gitreset HEAD~1-n git reset HEAD~1 --soft git reset HEAD~1 --hard Soft: remove todos os commits posteriores voltando os para o estágio anterior que é changed to be commited, mas ele os mantem na pasta para que possa ser adicionado novamente. Hard: remove todos os commits posteriores a versão acessada e também os arquivos que a eles perteciam.
  • 48.
    Git - checkout Voltandoversões git checkout a7e09ab07b1f6622a49ebfb59fc76c77358d6caf git checkout a7e09ab
  • 49.
    Git - checkout Voltandoversões git checkout a7e09ab07b1f6622a49ebfb59fc76c77358d6caf git checkout a7e09ab
  • 50.
    Git - branch Branchprincipal master Git ow
  • 51.
    Git - branch Vericando branches: git branch Veri cando branches (locais e remotos): git branch -a Criando branch: git checkout -b <branch> Trocando de branch: git checkout <branch> Enviar branch para origem: git push -u origin <branch> Ligando branch remoto com local: git checkout -b <branch> origin/<branch>
  • 52.
    Git - push/ pull Atualizar arquivos locais: git pull Enviar commits para servidor remoto: git push Antes de enviar commits, sempre atualizar arquivos locais antes Indicando repositório e branch: git pull origin master
  • 53.
    Git - Gerandochave Gerar chave com o comando ssh-keygen (*não utilizar senha) Abrir o arquivo id_rsa.pub e copiar o conteúdo No Github: Settings > SSH and GPG keys Clique no botão New SSH Key Colocar um título e colar o conteúdo
  • 54.
    Git - clone Clonar/Copiarum repositório git clone git@github.com:<usuario>/<repositorio>.git <pasta>
  • 55.
    Git - remote Adicionandorepositório remoto git remote add <nomecurto> git@github.com:<usuario>/<repositorio>.git Geralmente se usa o nome curto: upstream
  • 56.
    Git - Sincronizandocom remote Atualizar seu repositório com alterações de remoto git fetch upstream git checkout <branch> git merge upstream/<branch> Veri car se ocorreram erros no merge
  • 57.
    Git - tag Geraçãode tags Gerar uma tag git tag <tag> (0.1.0) Listar tags git tag -l Enviar para repositório git push origin master --tags Versionamento semântico
  • 58.
  • 59.