Ich bin ein PHP-Entwickler, habe aber noch nie an Open Source-Projekten gearbeitet oder dazu beigetragen.
Ich entwickle ein CMS für meinen eigenen Gebrauch. Ich habe einen funktionierenden Prototyp und ich denke, dass die PHP-Community daran interessiert sein könnte, wenn er fertig ist (wahrscheinlich ein paar Monate).
Ich bin ein ziemlich selbstbewusster Entwickler, aber es gibt Bereiche, in denen mein Wissen fehlt, insbesondere wenn es um Open Source-Probleme geht:
- Was ist der beste Weg, um das Projekt bekannt zu machen und / oder andere zu finden, die an einer Zusammenarbeit interessiert sein könnten?
- Mein CMS wird von CakePHP betrieben und befindet sich im Grunde genommen als Schicht darüber. Ich habe das CakePHP-Projekt auf GitHub gespalten: Ich habe zuvor Versionskontrollsysteme (SVN) verwendet, aber ich bin ziemlich neu in GIT, also möchte ich sicher sein, dass ich die Dinge "auf die beste Art und Weise" mache.
- Wie kann ich mich über Lizenzprobleme informieren? Welche Open Source-Lizenz eignet sich am besten für meine App? Außerdem leiht sich mein Projekt viele andere Open-Source-Projekte aus, zum Beispiel habe ich Codeabschnitte (die ich stark modifiziert habe), die jedoch Urheberrechts- / Lizenzhinweise enthielten - ich habe keine Ahnung, was meine Verpflichtungen in Bezug auf sind diese in behalten
Dies sind nur einige Beispiele für die Fragen, die ich habe, aber ich denke, es muss einige Ressourcen geben, die für mich nützlich wären. Wo kann man am besten anfangen, was sind die besten Communities / Sites, die diese Themen behandeln? Ich habe mich umgesehen, konnte mir aber nicht viel einfallen lassen ...
quelle
Antworten:
Ich bin kein Anwalt, aber ich werde es versuchen.
CakePHP ist unter der MIT- Lizenz lizenziert , was im Grunde bedeutet, dass es die Wiederverwendung innerhalb proprietärer Software unter der Bedingung ermöglicht, dass die Lizenz mit dieser Software vertrieben wird. Es ist kompatibel mit GPL- Lizenzen, unter denen viele Open Source-Projekte veröffentlicht wurden.
Bei den anderen Projekten, die Sie "ausleihen", müssen Sie deren Lizenztypen und deren Kompatibilität untereinander sowie den Lizenztyp, den Sie verwenden möchten, überprüfen. Wenn einer von ihnen eine GPL- Lizenz verwendet, müssen Sie diese auch gemäß den Bestimmungen des Lizenzstatus mit GPL veröffentlichen
Mein Vorschlag ist, unter der GNU GPL v3- Lizenz zu veröffentlichen, da Sie dadurch angemessene Eigentumsrechte an Ihrer Arbeit erhalten und andere diese möglicherweise sowohl in kommerziellen als auch in offenen Projekten verwenden können. Beachten Sie jedoch, dass die Lizenzen der "ausgeliehenen" Projekte kompatibel sein müssen .
Verwenden Sie für Best Practices mit Git und Github,
git submodule
um andere Projekte in Ihre eigene Bibliothek aufzunehmen. Dies ist besser, als die Dateien direkt einzuschließen, da Sie die Arbeit nicht als Ihre eigene empfehlen.quelle
git submodule add git://github.com/jquery/jquery.git public/vendor/jquery
Lesen Sie diesen Leitfaden von Eric S. Raymond (der Rest des Buches ist ebenfalls lesenswert).
Persönlich würde ich mir darüber keine großen Sorgen machen - Sie werden damit nicht direkt Geld verdienen, und auch sonst niemand, da es bereits eine Fülle exzellenter kostenloser Allzweck-CMS gibt. Ich schlage vor, Sie gehen mit der liberalsten Lizenz, die Sie können (MIT oder BSD), es sei denn, Sie leihen Code aus, der unter einer viralen Lizenz steht (normalerweise GPL oder eine Vielzahl davon). In diesem Fall werden Sie auf die eine oder andere Weise in diese Lizenz gezwungen.
Lesen Sie alle Lizenzen der von Ihnen verwendeten Bibliotheken und Snippets sorgfältig durch. Sie sollten angeben, ob Sie den Code weitergeben und ändern dürfen und ob Sie sie in abgeleitete Werke aufnehmen müssen (die meisten Lizenzen erfordern dies, und selbst für diejenigen, die dies nicht tun, ist die Zuordnung das Mindeste, was Sie tun können, um dem zu danken Originalautoren für ihre Arbeit).
quelle