¿Cuál es una forma correcta / educada de heredar de un proyecto de código abierto abandonado para un nuevo proyecto de código abierto?


13

Mi equipo acaba de tratar de contactar a algunos chicos de un antiguo proyecto de código abierto alojado en code.google.com. Les dijimos que nos gustaría unirnos a su proyecto y comprometernos con él, al menos con alguna rama del mismo, pero nadie nos respondió. Intentamos con todos, propietarios y encargados; nadie estuvo activo de ninguna manera, y nadie respondió.

Pero tenemos algo de código que comprometer y realmente nos encantaría seguir trabajando en ese proyecto. Entonces necesitamos crear un nuevo proyecto. Se nos ocurrió un nombre que está cerca pero no es un duplicado del nombre del proyecto del que queremos heredar. ¿Cómo deberíamos hacer nuestra primera confirmación y cuál debería ser el mensaje de confirmación? ¿Deberíamos copiar su código a nuestro repositorio con un comentario como "heredamos este código, lo encontramos aquí bajo tal y tal licencia ... ahora lo estamos actualizando a esta licencia más / menos estricta ..."? ¿O deberíamos usar su código como nuestro primer commit, con actualizaciones que dicen "heredamos de ... hicimos tal y tal cambio ..."?


77
A menos que obtenga permiso del proyecto original, dependiendo de la licencia original, es probable que no pueda convertirlo en una licencia menos estricta. Si es una licencia lo suficientemente permisiva como para permitir eso, entonces probablemente no haya mucha necesidad de pasar a una licencia aún más permisiva.
Matthew Scharley

Respuestas:


13

Lo ideal sería bifurcarlo en Google Code, que mantendría toda la historia antigua. No sé si esto es explícitamente compatible con Google Code, pero si el proyecto anterior usa git como control de versión, puede hacerlo manualmente clonando el proyecto antiguo en un directorio local, modificando el origincontrol remoto para que apunte a su nuevo repositorio, luego empujando su copia local.

Estoy seguro de que se puede usar un método similar con subversion ( svnsync¿tal vez?) Pero no tengo experiencia práctica con subversion, así que no puedo comentar allí.


2
el código de google es compatible con Mercurial, pero no con git. Sin embargo, para mercurial el procedimiento es muy similar, solo modifique el defaultalias en .hg\hgrc.
Wim Coenen

@Wim gracias por la información. Realmente no he usado mucho Google Code, solo proporcioné tanta información sobre lo que sé como me fue posible.
Matthew Scharley

8

Lo crucial es si la licencia del código original y lo que le permite hacer. Una cosa con la que debe tener mucho cuidado es cambiar la licencia, ya que es posible que no se le permita hacerlo, recuerde que no tiene derechos de autor.

Pero, suponiendo que todo esté en perfecto orden, entonces el mensaje de confirmación inicial podría ser "Importado 2011-02-25 de http: // .... versión XYZ", así como una explicación destacada en el archivo README.txt.

Sea muy claro acerca de lo que ha hecho y, si es posible, escriba su código utilizando el código original como biblioteca. Esto hace que sea mucho más fácil separar las preocupaciones.



4

Si se contactó con el antiguo proyecto, entonces no creo que puedan quejarse, solo sea abierto y claro sobre lo que está haciendo y no se atribuya el trabajo de los demás. Probablemente intente explicar la situación tanto en su sitio web como en el primer mensaje de confirmación. También sería cortés asegurarse de que la importación del código inicial sea exactamente la misma que la del proyecto anterior, por lo que todos los cambios están en los registros de confirmación.

Como han dicho otros, solo puede cambiar la licencia a una compatible y NO PUEDE cambiar los propietarios de los derechos de autor, incluso si cambia la licencia. Es importante mantener todos los nombres de los propietarios de derechos de autor existentes allí y en todos los archivos en los que trabajaron.



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.