Skip to content

cbcalves/op-desafios

 
 

Repository files navigation

op-desafios

Este repositório contém as soluções para os desafios em http://osprogramadores.com/desafios.

Como contribuir

  1. Faça um fork deste repositório clicando no botão Fork no canto superior da tela.

  2. Faça um clone do repositório para a sua estação de trabalho:

    $ git clone https://github.com/<seu_usuario>/op-desafios
    
  3. Entre no diretorio criado pelo git (op-desafios).

  4. Crie um remote apontando para o repositório dos OsProgramadores:

    $ git remote add upstream https://github.com/OsProgramadores/op-desafios
    
  5. Uma vez feito o fork, crie um branch de trabalho (por exemplo, "dev")

    $ git checkout -b dev
    
  6. Trabalhe normalmente no branch de desenvolvimento. Quando estiver satisfeito com o resultado, faça o commit e o push com:

    $ git push origin dev
    
  7. O branch usado no "git checkout" tem que casar com o branch usado no "git push".

  8. Entre no github e abra um Pull Request (PR).

  9. Fique atento a erros na página do Pull Request (indicando que os testes de integração falharam) ou comentários dos admins. Se alterações forem necessárias, modifique o fonte e faça outro "git commit" seguido de "git push origin dev". Não é necessário fechar o PR e abrir outro.

Estrutura de diretórios

Ao criar um novo programa, mantenha a estrutura abaixo:

desafio-01/
  seu_usuario_no_github/
    linguagem-feature/
      arquivos com a sua solução
      README.md <-- comentários, opcional.
    ...
desafio-02/
  seu_usuario_no_github/
    linguagem-feature/
      arquivos com a sua solução
    ...
  • Linguagem é a linguagem em que o seu programa foi feito (em minúsculas). Olhe os outros casos de nomes de linguagens usadas no repo e mantenha o padrão.

  • feature é um diferenciador de uma feature dentro da linguagem. Por exemplo, dois programas em python usando duas libraries, uma chamada foo e uma chamada bar, ficariam em dois diretorios separados: python-libfoo e python-libbar. Só submeta mais de uma versão por linguagem se a diferença no programa for significativa.

  • Arquivos com espaços ou caracteres não ASCII (acentos, emoji, etc) não serão aceitos no repositório.

Observações para linguagens específicas

Python

  1. Apenas python3 é suportado.

  2. Use espaços (não tabs!) para indentar o seu código.

  3. Use indentação em 4 espaços.

  4. Cheque o seu código com o pylint antes de enviar. O arquivo de configuração usado pelo depo está em travis-ci/pylint3.rc. Para checar o seu programa, rode:

    $ pylint --rcfile=<diretorio_do_seu_repo>/travis-ci/pylint3.rc <nome_do_seu_arquivo.py>
    
  5. Pull Requests contendo código em Python serão automaticamente verificados pelo pylint. Ao submeter um PR, observe a tela do PR e verifique se a integração falhou. Em caso de erro, clique no link e verifique as mensagens de erro do pylint. Corrija o código, faça outro submit e push.

Em caso de problemas ou dúvidas, entre em contato com um dos administradores.

About

Soluções para os desafios (por usuário)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 31.9%
  • C++ 22.4%
  • Go 11.7%
  • Python 9.9%
  • Rust 5.1%
  • Java 5.0%
  • Other 14.0%