Mecanismo DVCS recomendado para alojar muchos parches independientes

Tengo un proyecto recién empezando enhttp://sourceforge.net/projects/iotabuildit/ (Más detalles enhttp://sourceforge.net/p/iotabuildit/wiki/Home/) que actualmente está utilizando Mercurial para el control de revisiones. Y parece que Mercurial y SourceForge casi tienen todas las características o elementos correctos para armar el mecanismo de colaboración que tengo en mente para este proyecto, pero creo que todavía no he llegado a eso. Quiero que la gente pueda enviar, discutir y votar sobre cambios individuales de un gran número de personas (más desarrolladores de los que normalmente tendría un proyecto). Y quiero que sea lo más fácil posible para que los usuarios participen en esto. El pensamiento en este momento es que las personas pueden clonar el fork "free4all", que es un clon del repositorio de "código" básico, o pueden crear su propio fork en su propio proyecto de usuario de SourceForge (SourceForge ahora proporciona un espacio de trabajo para cada usuario para alojar varios contenidos relacionados con el proyecto). Luego, pueden clonar eso en su repositorio local (después de descargar TortoiseHg o su cliente Mercurial preferido). Luego pueden realizar modificaciones, confirmarlas, enviarlas a la bifurcación y solicitar una combinación en el repositorio de "código" de base, en cuyo punto podemos discutir / revisar la solicitud de combinación. Todo esto sigue siendo demasiados pasos, y más formal de lo que me gustaría.

Veo que existe tal cosa como "archivado" en Mercurial, pero no veo cómo / si eso es compatible en el repositorio de SourceForge. Y probablemente no haya una manera de discutir los cambios archivados ya que hay solicitudes de combinación.

Estoy buscando cualquier sugerencia que haría esto más fácil. Idealmente, me gustaría que los usuarios pudieran:

Especifique cualquier versión que les gustaría jugar, y pida que la versión solicitada se extraiga del control de origen alojada para que el usuario la jueguea SourceForge (debido a que el juego no se puede jugar localmente debido a restricciones de seguridad, el navegador Chrome se aplica correctamente al código javascript que accede al contenido de la imagen en archivos independientes)Permitir que el usuario descargue la versión solicitada del proyecto para edición local (una versión de C # creada desde la misma fuente también se puede reproducir localmente, o Internet Explorer aparentemente ignora la restricción de seguridad, lo que permite la reproducción local en un navegador)Acepte las modificaciones enviadas en un formulario que se puede combinar con cualquier otra "rama" compatible o versión del juego que se haya enviado / publicado (lo ideal sería que fuera muy simple; tal vez se use para cargar todo el conjunto de archivos al servidor). y allí se realiza la comparación y extracción de parches / dif.Otros jugadores pueden ver una lista de los parches enviados disponibles y elegir cualquier conjunto para jugar / probar, luego discutir y votar sobre los cambios.

Claramente, algunos de estos requisitos son muy específicos, y probablemente tendré que escribir algún código del lado del servidor si quiero alcanzar el objetivo ideal. Pero quiero tomar el camino de menor resistencia y usar las tecnologías disponibles si gran parte de la funcionalidad que necesito ya está casi ahí. O me gustaría ver si puedo acercarme más al proceso que describí anteriormente sin escribir ningún código de servidor. Entonces, ¿qué piezas me ayudarán a hacer esto? ¿Mercurial y SourceForge admiten el almacenamiento y el intercambio de código archivado de la forma que yo quisiera? ¿Hay algo en esta "Cola de parches" (que veo, pero no puedo entender o ponerme a trabajar todavía) que podría ayudar? ¿Hay una manera de extraer un archivo de parche de un conjunto dado de archivos en comparación con una revisión específica en un repositorio (en el lado del servidor), sin que el usuario descargue ningún componente de Mercurial?

Respuestas a la pregunta(1)

Su respuesta a la pregunta