Git Product home page Git Product logo

🌻 Siga o FLOW para participar do projeto

Para começar: Faça um fork do repositório que deseja realizar alterações, o fork é basicamento a cópia do nosso repositório em seu próprio GitHub, onde você pode seguir seu próprio fluxo de desenvolvimento. Caso queira nos enviar suas alterações, você DEVE seguir alguns padrões!.

📋 Regras

  • Sincronize sua branch antes de criar uma pull-request. veja como
  • Siga os padrões para nomear uma branch. veja como
  • Siga os padrões de commit. veja como

🤔 Quando sincronizar as branchs?

Essa etapa é muito importante para encontrar conflitos entre os códigos e é aconselhado realizar essa sincronização todos os dias antes de continuar a realizar as alterações no código e OBRIGATÓRIO sempre que pretender criar uma pull-request. Neste WORKFLOW você pode conferir em "Sincronizando branchs".

🔀 FORK

Crie um fork do nosso repositório para o seu GitHub e então clone seu novo repositório no seu ambiente de desenvolvimento, você pode usar seu terminal de preferência (GitBash, cmd):

Clonando repositório

# git clone [url-do-seu-fork]
$ git clone https://github.com/Minnemi/minnemi-front.git

🔄 Instalando as dependências e executando a aplicação

⚠️ Observação:

  • Realizar a instalação das dependências pode mudar de acordo com a linguagem, ferramenta ou padrão de desenvolvimento.
  • Cada repositório terá um README.md próprio que te ensina a instalar os recursos necessários para concluir este passo.
  • Para este exemplo, nós estamos usando o repositório minnemi-front.

Acessando pasta

$ cd minnemi-front

Instalando dependências

$ npm install
# ou
$ yarn install

Executando a aplicação

$ npm run dev
# ou
$ yarn dev

✏️ Realizando as modificações

A primeira coisa a se fazer é adicionar o nosso repositório como um "remote" adicional do seu repositório local com Git, isso é para facilitar a sincronização entre as branchs principals de desenvolvimento da minnemi e do seu fork.

Adicionando um repositório remoto com o Git:

# git remote add [alias] [url-do-repositório]
$ git remote add minnemi https://github.com/Minnemi/minnemi-front

Você pode verificar a adição do novo repositório remoto assim:

$ git config --list --local

Você verá algo assim na lista de configurações remote.minnemi.url=https://github.com/Minnemi/minnemi-front

Você também pode encontrar o repositório remoto padrão nessa lista remote.origin.url=https://github.com/viniciuscosmome/minnemi-front.git

📂 Crie uma nova branch

Crie uma branch para começar a adicionar suas alterações, Siga nosso padrão para criar uma branch descritiva:

# git checkout -b [tipo-de-alteração]/[o-que-ela-altera]
$ git checkout -b feature/database-profile-schema

Tipo de alteração:

  • feature: adiciona nova funcionalidade
  • chore: altera uma funcinoalidade existente
  • fix: resolve um problema

💾 Staged -> Commit

A cada etapa concluída da sua alteração é aconselhado realizar um "commit". Isso serve para que você possa apagar o que está fazendo e ainda manter as alterações anteriores.

Siga essa etapas:

Veja uma lista dos arquivos modificados

$ git status

Envie os arquivos que você queira realizar o commit

  • Não é aconselhado usar o git add .(all)
$ git add src/styles/

Realize o commit das mudanças. Nós também temos um padrão de commit.

# git commit -m "[tipo-de-mudança]: [descrição]"
$ git commit -m "chore: remove user profile scheme"

Leia mais sobre o padrão de commit

Tipo de mudança (principais):

  • chore - mudanças em arquivos que já são controlados pelo git.
  • feat - adicionando uma nova funcionalidade, módulo, etc.
  • fix - realiza alguma correção no código.
  • refactor - realiza modificações no código sem adicionar ou alterar o comportamento do código.

A descrição do commit deve estar em inglês e deixar explícito a principal alteração no código:

  • ❌ Exemplo errado:
    • "chore: changes to the .github file"
    • "chore: alteraçãos no arquivo .gitignore"
  • ✅ Exemplo correto:
    • "chore: includes the .env file in the .gitignore"
    • "chore: inclui o arquivo .env no .gitignore"

🔄 Sincronizando as branchs

Após realizar todas as suas alterações, chegou a hora de verificar se não há conflitos para resolver.

Primeiro, certifique-se de que seu repositório local está na branch develop e então execute o comando para baixar as mudanças e atualizar sua branch principal de desenvolvimento:

# git pull [repo-remoto] [branch-do-repo-remoto]
$ git pull minnemi develop

Explicando:

  • minnemi: é a referência ao repositório remoto que a gente criou lá no inicio desse FLOW.
  • develop: é o nome da branch do repo remoto que deve ser baixada para atualizar nossa branch.

Após atualizar a branch develop, volte para a branch que você criou e realize a mesclagem da seguinte forma:

Voltando para branch

$ git checkout feature/example-branch

Mesclando a branch com a principal

# git merge [a-sua-branch-principal]
$ git merge develop
  • A branch usada aqui deve ser a branch sincronizada com o repositório remoto da Minnemi.

Resolva os conflitos, se existir, e então realize o commit das mudanças.

🚀 Enviando sua alteração para seu repositório GitHub (o fork)

Enviando alterações

# git push [repo-remoto] [nome-da-branch-atual]
$ git push origin feature/example-branch

🔃 Pull-request

Acesse seu repositório no GitHub, acesse a branch que acabou de enviar e crie um pull-request

Explicando:

  • base repository: repositório de destino
  • base: branch que receberá o pull-request
  • head repository: repositório do remetente (seu repo)
  • compare: a branch com as alterações que você deseja enviar

🎊 Congratulations!

Adicione a descrição da pull-request detalhando todas as alterações que ela faz e envie a requisição.

🆙 Nessa etapa, a descrição pode ser no seu idioma de domínio para que a escrita fique melhor, o meu é português brasileiro.

minnemi's Projects

minnemi-front icon minnemi-front

Plataforma de envios de cartas para si mesmo, com o recebimento agendado para o futuro!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.