A la recherche d'informations sur Fork (développement logiciel) ? Vous êtes ici : recherche >> Encyclopédie » Fork (développement logiciel)
Un fork, ou embranchement, est un nouveau logiciel créé à partir du code source d'un logiciel existant. Cela suppose que les droits accordés par les auteurs le permettent : ils doivent autoriser l'utilisation, la modification et la redistribution du code source. C'est pour cette raison que les forks se produisent facilement dans le domaine des logiciels libres.
Un fork peut être bénéfique pour un projet donné lorsque sa gouvernance actuelle conduit à une impasse, sa reprise par un nouveau groupe pouvant le relancer. Il peut aussi être néfaste en provoquant un éparpillement des ressources.
Un fork peut naître à la suite de divergence de point de vues ou d'objectifs parmi les développeurs, ou encore à la suite de conflits personnels. Les projet parent et dissident peuvent avoir des rapports amicaux (fork amical) ou bien conflictuels (fork inamical). Quels que soient les rapports entre les deux projets, les licences de logiciels libres permettent l'emprunt de code d'un projet vers l'autre. Ainsi, les différents BSD s'empruntent régulièrement du code car ils partagent la même licence.
Une illustration de la régulation des projets libres par ce moyen est l'apparition d'au moins trois forks libres pour le projet SourceForge à l'issue de la « dérive de SourceForge »[1] :
Sommaire |
Une autre catégorie de fork existe et elle porte le nom de « spork ». Ce type de fork est initié à la suite de problèmes relationnel avec le mainteneur principal d'un paquet logiciel qui refuse de se conformer au rôle classique d'un mainteneur. Par exemple, il refuse d’intégrer des corrections tout à fait valides ou de nouvelles fonctionnalités sans en donner la raison. Le spork consiste à prendre le code source du projet amont et à lui appliquer les patches légitimes rejetés par ce dernier.
Un spork permet de partager l'effort de maintenance en aval du projet. Au lieu que chaque distribution maintienne indépendamment un ensemble de patches à appliquer au projet amont, elles peuvent ainsi partager l'effort en créant un projet intermédiaire qui rassemble les patches communs, il ne reste alors plus aux distributions qu'à gérer les patches spécifiques à leur propre distribution.
Ce fut le cas notamment de projets tels que:
À l'inverse des forks, certains projets de logiciels libres décident de fusionner leur base de code car ils partagent des objectifs similaires ou parviennent à réconcilier leurs points de vue.
Exemples de fusion de logiciels libres:
Le contenu de cette page (Fork (développement logiciel)) est un minuscule extrait de l'encyclopiédie gratuite en ligne WIKIPEDIA
le webmaster de ce site n'est pas l'auteur de cet article (Fork (développement logiciel)). Vous pouvez retrouver l'original de cet article (Fork (développement logiciel)) à cette adresse et la liste des auteurs
ici
Vous pouvez modifier ou compléter cet article mais également discuter de son contenu (Fork (développement logiciel)) sur le site de WIKIPEDIA France - Contenu (Fork (développement logiciel)) disponible sous GNU Free Documentation License.