Estoy participando en el "Plan Nuggets·Starting"
prefacio
El rápido desarrollo del mundo de la programación actual no se puede separar del próspero desarrollo de los proyectos de código abierto. Como una conocida comunidad de código de proyecto de código abierto, Github juega un papel fundamental en la comunidad de código abierto. Este artículo te ayudará a entender cómo participar. en la construcción de código abierto en Github.
Participar en código abierto
Para la mayoría de las personas, el uso de proyectos de código abierto ya es un lugar común, ya sea una base de datos o un ide, una biblioteca de terceros o una herramienta de conexión puede ser miembro de un proyecto de código abierto. Pero mucha gente simplemente lo usa. De hecho, los proyectos de código abierto necesitan la ayuda de todos para prosperar.
Mucha gente piensa que solo enviar código y hacer relaciones públicas para fusionar código puede considerarse una contribución a los proyectos de código abierto. De hecho, esto no es correcto. Hay otras soluciones que también pueden contribuir a los proyectos de código abierto.
Discusiones
Discussions
Es un área de discusión para proyectos de código abierto de Github. Los desarrolladores pueden hacer preguntas y varios temas en el área de discusión y pueden participar en las discusiones.
Discussions
Habrá gerentes de proyectos de código abierto para administrar Los desarrolladores pueden plantear varios problemas de uso y presentar nuevas ideas, ideas de diseño, etc., que es un módulo similar a un foro relativamente abierto. Usar su propia comprensión del proyecto de código abierto actual para responder preguntas puede hacer que más recién llegados que son nuevos en este proyecto se unan más rápidamente.
Asunto
Issue
Es una de las funciones importantes de Github, los desarrolladores pueden Issue
proponer errores, nuevas funciones, etc.
El proceso propuesto por cada proyecto Issue
será ligeramente diferente, aquí hay open-telemetry/opentelemetry-java-instrumentation
un ejemplo del proyecto:
Aquí, Issue
la modificación de la plantilla por parte de la comunidad se divide en tres tipos, error, función y vulnerabilidad de seguridad.Después de seguir la guía, encontrará que la plantilla interna también está preestablecida:
Lea atentamente el contenido de la plantilla y complétela según corresponda.
Issue
与Discussions
实际上没有固定的边界,大部分情况下你既可以在Discussions
提出问题也可以通过Issue
提出问题。但是以我个人的理解,Issue
会更加的正式,并且正规的开源项目会有人以专门的流程来处理提出的Issue
,因此如果是一些bug类的问题建议还是提出Issue
更好。
Issue分类标签
如果只是提出Issue
的话没法更多的参与项目,但是想尝试去解决一些Issue
往往又无从下手,该怎么办?
此处善用Issue
的分类标签可以帮上大忙。为了管理Issue
,往往社区人员会查看新提出的Issue
之后会对其打上一定的标签。社区的新人可以关注如下的标签:good first issue
这个标签表示Issue
适合新人来熟悉项目。有些大型的项目甚至还会有类似的good second issue
等标签。用户善于使用标签筛选,找到这类Issue
就能够帮助自己更好的成为开源项目的新人。
Pull Requests
Pull Requests
一般简称为PR
,是一种将自己改动代码推送合并到开源项目的手段。一般的开源项目都禁止直接在分支上进行推送,所有的代码改动都需要走PR
的流程。
如何提出自己的第一个PR
此处样例使用的是开源项目open-telemetry/opentelemetry-java-instrumentation
- 首先需要从原开源项目fork一份到你自己的仓库,这样你自己仓库就会有一份最新的开源代码
- 之后你就可以将自己仓库的fork的那份代码clone到本地进行开发,推荐创建新的分支来进行开发
- 开发完成后将代码push上来,至此都是正常的开发流程
- 此处开始新建PR
- 之后选定自己的开发项目开发分支,以及想要合并到的开源分支,然后选择创建
PR
- Al crear un PR, debe completar algunos comentarios. Para que el PR se fusione, se recomienda describir en detalle lo que ha hecho esta vez y qué problemas se han resuelto. Sería mejor
PR
si hay un conexión específicaIssue
- Después de eso, haga clic en crear para completar
PR
la creación. El seguimiento es la revisión de los administradores de la comunidad y las sugerencias de modificación, y luego el seguimiento es la modificación y mejora repetidas, y luego se fusiona el código.
Notas de relaciones públicas
Cada proyecto de código abierto tendrá PR
diferentes especificaciones, y los detalles específicos generalmente se CONTRIBUTING.md
describen en detalle en el archivo, incluidas las especificaciones de codificación, las especificaciones de protocolo de la biblioteca utilizada, etc. Lea PR
atentamente antes de enviar para evitar violar las especificaciones después de que el envío fue rechazado. .
Resumir
Todavía hay muchas maneras de jugar en la comunidad de código abierto. Estas son solo algunas de las formas más sencillas de participar en el código abierto. Si desea participar en reuniones más profundas de varias comunidades, SIG de varias comunidades, etc., puede intentar explorar por sí mismo, para explorar el encanto de la comunidad de código abierto.