Práticas recomendadas / ruins para compartilhamento de código? [fechadas]


9

Quanto mais eu exploro o Github , mais gosto. Eu realmente gosto de como a codificação está se tornando mais social.

Estou curioso para saber se existem práticas ruins que os programadores devem evitar ao compartilhar seu código entre si. E ao nomear más práticas, quais são as melhores práticas para compartilhamento de código ?

Por exemplo:

É uma prática ruim para um único repositório ter vários scripts / projetos chamados 'MiscProjects' ? Onde esse repositório, como o nome sugere, é uma coleção de pequenos scripts e projetos diversos. Isso pode se parecer com o modo como um programador organiza projetos em seu armazenamento local, mas possivelmente não é o ideal para o compartilhamento de código?

Talvez se um bom README / documentação for feito, seria melhor? Ou desde que esteja bem documentado, vale tudo?

Respostas:


9

Embora não haja 'más práticas' estabelecidas, da mesma forma que outros sistemas de controle de versão, existem convenções .

Seu repositório Git deve ser o menor possível. Se você vem do módulo CVS / SVN, era comum ter um repositório único estruturado que pudesse compor vários repositórios para vários projetos. A maneira do Git é dividi-los e ter repositórios Git separados para cada projeto. Os motivos são:

  • Git é mais rápido para repositórios menores.
  • Devido ao seu design, cada operação afeta todo o repositório . É ineficiente executar operações do Git em projetos necessários, se você estiver trabalhando apenas em um deles.

A documentação, como sempre, é uma obrigação. Enquanto as pessoas são hábeis em ler código, ninguém quer interpretar o código mais do que precisa. Usar o README de nível superior para descrever o projeto e a estrutura do repositório Git sempre será uma coisa boa para os envolvidos (ou que desejam se envolver) no projeto.

A maioria do projeto no GitHub está em conformidade com as convenções. Use-os como exemplos de como estruturar seus projetos futuros.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.