language agnostic - Comment redonner du code à un projet Open Source?

Translate

Si vous suivez un projet Open Source et souhaitez apporter des modifications de code, que devez-vous faire?

This question and all comments follow the "Attribution Required."

Toutes les réponses

Translate

Je passais du temps à connaître les gens en premier. Habituellement, ils ont un chat IRC où tout le monde est au ralenti. Passez du temps à connaître les gens, à étudier le code, à consulter la documentation, puis si vous sentez que vous êtes un bon candidat pour le projet, commencez à contribuer aux correctifs de bogues. N'essayez pas d'ajouter de nouvelles fonctionnalités au début. Ils ne seront généralement pas acceptés.

Regardez également cette discussion sur Google TechComment protéger votre projet Open Source contre les personnes toxiques. Cela vous apprendra ce qu'il ne faut pas faire.

La source
Translate

La meilleure façon de faire est de vous présenter comme ceci "Salut, Voici un bogue / une fonctionnalité et voici un correctif qui le corrige / l'implémente."

Je suis sur quelques projets open source, et il y a beaucoup de gens avec les meilleures intentions d'aider mais qui ne font jamais rien, donc si vous vous présentez avec du code fonctionnel, vous serez considéré comme beaucoup plus précieux.

La source
Translate

Comme l'ont dit les affiches précédentes, c'est une question pour le projet. Vous constaterez que certains sont plus ouverts au changement que d'autres. D'un point de vue mécanique, vous devrez voir s'ils utilisent SVN (par exemple sur le code google) ou CVS (par exemple sur sourceforge) et déterminer s'ils utilisent un patch ou une autre méthode.

Un bon exemple du type de procédure que vous pourriez avoir besoin d'utiliser peut être vu sur le site de gimp:http://www.gimp.org/bugs/howtos/submit-patch.htmlNotez leur utilisation de Bugzilla, patch et CVS

La source
Translate

En tant que créateur de plusieurs projets open source, je suis de l'autre côté des choses en ce sens que j'essaye d'obtenir des contributeurs. Voici ce que je dirais:

  • Annoncez-vous de la manière appropriée pour le projet: email, liste de diffusion, forum, etc.
  • Voyez si votre idée est déjà en cours d'élaboration. Si c'est le cas, essayez peut-être d'aider plutôt que de dupliquer les efforts.
  • Découvrez la méthode préférée pour soumettre le code
  • Assurez-vous de suivre les styles de codage utilisés dans le projet. (Si vous décidez de convertir tous les onglets en espaces, ils ne pourront pas fusionner facilement vos modifications dans leur système de contrôle de version et ignoreront probablement votre soumission.)
La source
Translate

Des choses comme celles-ci étaient simples.

Il y avait une liste de diffusion pour les utilisateurs et une pour les développeurs. Si vous voyez un problème et que vous pouvez le résoudre, corrigez-le, puis exécutez le patch de Larry Wall et envoyez le correctif résultant à la liste des développeurs avec une explication rapide de ce qu'il fait. Généralement, un développeur avec un accès en écriture au CVS (ou dans l'ancien temps sur la disquette sur laquelle résidait le projet;)) vérifierait les choses et si votre patch fait ce qu'il dit sur la boîte et ne casse rien d'autre dans lequel il entre l'arbre source proprement dit.

De nos jours, il y a beaucoup, beaucoup plus de projets utilisant le développement ouvert et beaucoup d'entre eux sont gérés par des personnes qui n'ont jamais exécuté de projet logiciel avant et encore moins un projet open source, donc les choses peuvent être plus délicates. Généralement, envoyer un patch à quelqu'un qui fait beaucoup de développement dans la bonne zone du projet permet aux bons yeux de le regarder rapidement, même aujourd'hui. Une navigation dans le référentiel en ligne vous indiquera les personnes qui font le travail plutôt que celles qui obtiennent leur nom sur la première page du site Web, contactez d'abord ces types :)

La source
Translate

Quelques autres choses à garder à l'esprit:

  • Soyez certain quetoipossèdent en fait le code auquel vous souhaitez contribuer, et non votre employeur ou le client pour lequel vous avez effectué les modifications. Vérifiez votre contrat de travail ou votre contrat de service s'il existe une possibilité que vous soyez dans une telle situation.

  • Vérifiez s'il existe un processus d'attribution de propriété intellectuelle que les développeurs préfèrent que les contributeurs passent. De nos jours, de nombreux projets Open Source ont de telles affectations, de sorte que tous les droits sur le code du projet peuvent être détenus par le projet lui-même et / ou son sponsor.

Ces deux éléments sont importants pour vous protéger vous-même, le projet et quiconque souhaite utiliser ou développer le projet en aval des revendications liées au code que vous avez écrit.

La source
Translate

Si vous cherchez des moyens de vous impliquer à plus petite échelle (peut-être pour progresser)OpenHatcha une base de données de recherche de bogues (triés par langue / framework) ainsi qu'un excellent tutoriel pour commencer.

Une autre façon de commencer estCodeTriagequi a des dépôts GitHub à la recherche d'aide pour résoudre les problèmes ouverts qui sont également organisés par langue.

La source
Translate

La première chose à faire est de contacter les principales personnes qui exécutent le projet open source. Demandez-leur s'il est acceptable de contribuer au code et allez-y.

Le simple fait d'écrire votre code amélioré et de le leur donner peut entraîner le rejet de votre code.

La source
Translate

Cela dépend du projet, comment et où il est hébergé. Le mieux est de trouver un contact et de lui envoyer un e-mail ou de voir s'il existe une liste de diffusion de développeurs.

La source
Translate

Discutez dans IRC ou parcourez les groupes de discussion s'ils en ont un. faites-vous connaître. Vous devrez peut-être soumettre des correctifs à un groupe de discussion avant de recevoir un compte pour vous soumettre.

Familiarisez-vous avec les normes de codage, les types de correctifs (par exemple, diff unifié) et récupérez une copie de leur CVS ou SVN s'ils permettent un accès anonyme.

La source