¿Agregaré una licencia de código abierto a mi proyecto se aplicará a todo el historial de revisión del proyecto?

Supongamos que poseo algún proyecto de código abierto sin información de licencia. Además, supongamos que nadie ha contribuido públicamente todavía, por lo que soy el propietario del código fuente y del copyright del proyecto.

  1. Supongamos que el código fuente ya está alojado en línea. Si decido otorgarle una licencia de fuente abierta cargando el documento de COPIA asociado al repository y ajustando los files fuente en consecuencia, ¿las versiones anteriores del proyecto también se licenciarán? ¿O las versiones actuales y futuras estarán protegidas mientras que las versiones anteriores caen bajo el dominio público?

  2. Alternativamente, supongamos que empiezo un nuevo proyecto usando un DVCS (por ejemplo, Mercurial) en mi máquina local. Confirmo todos mis cambios (localmente) y luego agrego información de licencia en un set de cambios posterior. Si tuviera que alojar el proyecto / repository, ¿se licenciará todo el historial o solo las versiones que siguen a ese set de cambios?

En (2), el proyecto inicialmente no está alojado, por lo que no parece un problema. Pero una vez que se carga, parte del historial del proyecto no includeá la información de la licencia, por lo que el resultado se verá casi exactamente como (1).

Lo pido porque Google Code le permite seleccionar una licencia en un nuevo proyecto, incluso si tiene la intención de importar el repository posteriormente, haciendo que las licencias parezcan algo externas al código fuente real, mientras que bitbucket.org no lo hace.

Si desea que la licencia se aplique a todo el historial, simplemente dígalo en el file de licencia, algo así como 'Este file fue agregado en la revisión x, pero puede considerar que la licencia se aplica a todas las revisiones anteriores a x también'.

Puede verlo como la licencia que declara lo que cubre … legalbol es código, el scope puede hacerse explícito si lo desea.

Siempre que no esté utilizando ninguna biblioteca GPL, lo que haga con su código depende de usted. Puede decir que su código es retroactivamente GPL o puede decir qué versión es GPL y qué versión es BSD y qué versión es la licencia de Apache. Incluso puede ofrecer una licencia doble: use GPL o me pague $ 100 para usar BSD (algo así como lo que hicieron los chicos de Qt antes de que decidieran ofrecer LGPL).

Ahora, si está utilizando una biblioteca con licencia de GPL, entonces su código ya es GPL.

No soy abogado pero, por lo que sé, el código o cualquier tipo de contenido que esté claramente en la web en realidad no lo convierte en dominio público.

Respecto a los times de su licencia: si adjunta una licencia a su código en la revisión 100, esto solo debería afectar la revisión 100 y los sets de cambios futuros hasta que vuelva a cambiar esa licencia. De lo contrario, podría, por ejemplo, revertir código de ser de código abierto después.

Según tengo entendido, la licencia que se obtiene al verificar un código (con una revisión dada) es la licencia aplicable a esa revisión del proyecto. IMO esto también es lo que hace posibles las horquillas de proyectos que pasaron de una licencia OSI a una cerrada utilizando el código de código abierto.

En consecuencia, probablemente debas crear un repository nuevo con la información de la licencia en su lugar antes de ponerlo en línea.

¿Por qué quieres exponer el historial de fonts? La solución más fácil para su escenario es simplemente copyr su código y crear un nuevo repository, luego publicar este nuevo repository en alguna parte, junto con una licencia de código abierto. Extraiga la fuente que actualmente está colgando en línea sin una licencia, y está satisfecho. La fuente anterior y la nueva fuente están completamente separadas y no debería haber ningún problema. Si alguien tiene una copy de la fuente anterior, probablemente no puedas hacer nada para evitar que hagan lo que quieran con ella, pero ya tienes un borrón y count nueva para todo lo demás. Cualquier cosa extraída de su nuevo repository (el que tiene la licencia) estará cubierto por esa licencia.

Supongo que usted es el autor de la fuente que actualmente está alojada en línea. Si no es así, entonces tiene otros problemas con los que lidiar, es decir, si tiene derecho a especificar una licencia para el código fuente de otra persona, probablemente no.

Si utiliza el código LGPL (o Apache o Berkeley-Licensed), es mejor que utilice el código GPL, que requiere que todo el código escrito en base a este código se publique como código abierto. Consulte http://www.google.com/help/faq_codesearch.html#license , pero puede get una mejor información sobre el código de Google desde esta fuente.