J'entends souvent parler du logiciel libre, du développement collaboratif de logiciels libres sur GitHub, mais je ne sais pas vraiment comment ça marche. Donc j'ai décidé de créer ce topic pour poser mes question car je préfère un discussion entre développeurs plutôt que de lire des pages d'encyclopédie longues et fastidieuse et souvent qui ne répondent pas à toute mes questions...
Le développement de logiciel libre collaboratif, se fait seulement sur GitHub ? Sinon, quels sont les autres concurrents ?
Existe t-il un administrateur sur le projet, qui a toute les autorisations ?
N'importe quelle personne peut participer au développement ou il faut l’autorisation de l'administrateur ?
Comment l'administrateur peut-il sélectionner les développeur et leur faire confiance ?
Qu'est-ce qui garantit que l'administrateur ne va pas voler le code à la fin et l'utiliser en tant que logiciel propriétaire à la place d'un logiciel libre ?
Si beaucoup de gens qui ne se connaissent pas participent au développement, comment être sûr qu'il n'y a pas un qui introduit du code malveillant (virus, ...).
Y a t-il des démarches administratives, légales à faire ?
Quels sont les avantages, les inconvénients ?
Des exemples de logiciels libre qui ont connus un succès
C'est quoi un fork ? Peut-on faire un fork sur n'importe quel projet sur GitHub ou autre ?
Des remarques qui n'ont rien à avoir avec mes questions sont les bienvenus.
J'attends vos réponses constructives (pas de trolls même si je connais pas la définition exacte du mot troll )
Salut,
Je vais répondre avec mes quelques connaissances... Ça peut être incomplet (voir faux et dans ce cas, je serais ravi que quelqu'un viennent me corriger).
Le développement de logiciel libre collaboratif, se fait seulement sur GitHub ? Sinon, quels sont les autres concurrents ?
Non et heureusement =). Pour développer un logiciel de manière collaborative, on utilise généralement un système de gestion de versions type Git ou SVN. Github héberge juste des repository Git mais il existe plusieurs autres sites qui font de même (sourceforge, google code, bitbucket). Tu peut aussi créer un repository sur ton propre serveur pour ton projet si tu le souhaite.
Existe t-il un administrateur sur le projet, qui a toute les autorisations ?
En général oui, il peut aussi y en avoir plusieurs. Les outils de type Github disposent généralement de systèmes de droits permettant a plusieurs personnes d'avoir différents droits sur le projet (ça peut aller de tous les droits a quasiment aucun).
N'importe quelle personne peut participer au développement ou il faut l’autorisation de l'administrateur ?
Ca dépends de la configuration des droits du projet. Pour un projet classique sur Github, n'importe qui peut forker ton projet et te proposer une pull request. A l'administrateur de voir si il l'accepte ou non.
Si beaucoup de gens qui ne se connaissent pas participent au développement, comment être sûr qu'il n'y a pas un qui introduit du code malveillant (virus, ...).
A partir du moment ou on commence a développer avec des inconnus, les codes review avant d'accepter le code dans le projet servent a ca.
Y a t-il des démarches administratives, légales à faire ?
Pas a ma connaissance
Des exemples de logiciels libre qui ont connus un succès
N'importe quelle personne peut participer au développement ou il faut l’autorisation de l'administrateur ?
Ca dépends de la configuration des droits du projet. Pour un projet classique sur Github, n'importe qui peut forker ton projet et te proposer une pull request. A l'administrateur de voir si il l'accepte ou non.
Ça signifie quoi forker un projet, et c'est quoi un pull request ?
Elried a écrit:
Si beaucoup de gens qui ne se connaissent pas participent au développement, comment être sûr qu'il n'y a pas un qui introduit du code malveillant (virus, ...).
A partir du moment ou on commence a développer avec des inconnus, les codes review avant d'accepter le code dans le projet servent a ca.
Donc l'administrateur doit relire le tout le code de chaque participant et le comprendre, ça fait beaucoup de travail pour lui et ça limite l'intérêt...
Ça signifie quoi forker un projet, et c'est quoi un pull request ?
Grosso modo, Forker un projet correspond a faire une copie qui t’appartienne (tu en est l'admin) du projet sur lequel tu souhaite travailler. Ainsi tu a tous les droit de modification. Une pull request permet a l'auteur du projet original d'incorporer (ou non) tes modifications. Par exemple, sur ce projet (github) tu peut voir qu'il y a eu 4 Pull request https://github.com/Oli4242/yuko-bot/pulls?q=is:pr is:closed
Donc l'administrateur doit relire le tout le code de chaque participant et le comprendre, ça fait beaucoup de travail pour lui et ça limite l'intérêt...*
Sur les projets de taille conséquente, il y a plusieurs personnes qui peuvent s'en charger. Après, c'est le prix a payer pour être sur de son code.
Elle permet d'assurer que toute personne aura le droit de lire, modifier et redistribuer ton code. Elle permet aussi de faire que toute personne reprenant ton code devra le diffuser elle aussi sous GPL ou licence compatible.
Elle permet d'assurer que toute personne aura le droit de lire, modifier et redistribuer ton code. Elle permet aussi de faire que toute personne reprenant ton code devra le diffuser elle aussi sous GPL ou licence compatible.
Ce que tu viens de dire ne se contredit pas avec ce qu'à dit Elried ?
Je ne crois pas, non. Je dis que les projets utilisant ton code devront être distribués sous GPL (ou compatible), donc sous licence libre, donc tu ne peux pas utiliser le code dans un projet propriétaire.
Je ne crois pas, non. Je dis que les projets utilisant ton code devront être distribués sous GPL (ou compatible), donc sous licence libre, donc tu ne peux pas utiliser le code dans un projet propriétaire.
Je vois qu'il y a des programmes assez costaux, mais est-ce que pour des projets de petites taille ça marche aussi le libre, par exemple j'ai envie de faire une petite application, il y aura du monte qui viendra travailler avec moi ? ou ça ne marche que pour de gros projets surveillés par de grandes organisations ?
Les gens qui participeront à ton projets seront les utilisateurs de celui-ci. Ce sont eux qui remonteront les bugs, voire les corrigeront, qui proposeront/implémenteront de nouvelles fonctionnalités, pour coller à leur usage.
Les gens qui participeront à ton projets seront les utilisateurs de celui-ci. Ce sont eux qui remonteront les bugs, voire les corrigeront, qui proposeront/implémenteront de nouvelles fonctionnalités, pour coller à leur usage.
C'est une question de licence surtout mais j'ajouterai que c'est pas forcement réfléchi de faire un fork au lieu de contribuer au projet source
Je pensais que pour contribuer au projet on devais faire un fork non ? comme ça on travaille à part puis on demande à l'admin de rajouter nos modifications sinon comment veux tu travailler directement sur GitHub ?
C'est une question de licence surtout mais j'ajouterai que c'est pas forcement réfléchi de faire un fork au lieu de contribuer au projet source
Je pensais que pour contribuer au projet on devais faire un fork non ? comme ça on travaille à part puis on demande à l'admin de rajouter nos modifications sinon comment veux tu travailler directement sur GitHub ?
Oui dans ce sens la oui la ça va, je voulais parler du fork pour créer un nouveau logiciel
Un jour les Valaisans domineront le monde. Mais pas demain, ya apéro
Personne ne connaît un petit projet pas très compliqué sur lequel je pourrais participer, que ce soit sur GitHub ou autre, ça me fera une belle expérience je suppose ? De préférence du Java
Je pense que la première chose à faire dans ton cas c'est de trouver un projet qui t'intéresse, que tu comprennes, dont tu comprends le code source et que tu vois comment améliorer.
Parce que "je veux améliorer un projet, il ne me reste plus qu'à en trouver un", ça a une belle philosophie mais je crains que ça ne soit pas la méthode la plus adaptée
Non non, tu aimes ou tu n'aimes pas, pas besoin de réflexion, ce que je te conseille de faire c'est de jeter un coup d'oeil à une liste de projets, d'en trouver un qui t'intéresse, de te familiariser avec son fonctionnement externe et interne et à ce moment-là seulement d'envisager d'y contribuer.
Oui c'est ce que je comptais faire car il faut que j'arrive à comprendre le code existant, ce qui n'est pas assuré d'avance, et puis il faut que le code existant soit bien structuré et non pas du grand n'importe quoi
Le logiciel libre, comment ça marche ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
Mes articles | Nazara Engine | Discord NaN | Ma chaîne Twitch (programmation)
Mes articles | Nazara Engine | Discord NaN | Ma chaîne Twitch (programmation)