开始加入gnu toolchain的开发(之二) 向GNU提交代码,必须要签署FSF版权转让协议(copyright assignment),这意味着你是作为贡献者将这些代码的版权归为FSF所有。这里只介绍了以个人的名义来申请签署协议和进行开发的流程,至于以公司的名义的流程,我不清楚,故没有介绍。申请签署该协议的方法为,填写如下表格,并发送给assign@xxxxxxx。 Please email the following information to assign@xxxxxxx, and we will send you the assignment form for your past and future changes. Please use your full legal name (in ASCII characters) as the subject line of the message. ---------------------------------------------------------------------- REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES [What is the name of the program or package you're contributing to?] [Did you copy any files or text written by someone else in these changes? Even if that material is free software, we need to know about it.] [Do you have an employer who might have a basis to claim to own your changes? Do you attend a school which might make such a claim?] [For the copyright registration, what country are you a citizen of?] [What year were you born?] [Please write your email address here.] [Please write your postal address here.] [Which files have you changed so far, and which new files have you written so far?] FSF会通过邮递的方式将协议邮寄给你,你签名之后再邮寄回去,整个过程大约要2,3个月的时间。所以,个人觉得,如果你确定有一些patch将要提交,则可以提前进行申请,这样可以节省时间,没有必要等patch发出去,被审核(review)通过之后再申请。需要注意的是,每个GNU项目都必须是单独签订协议的,所以,如果你想同时向gcc,binutils和gdb提交代码,则需要在申请表中填写gcc,binutils,gdb三项,并会收到三份协议。 如果你在“Do you have an employer who might...”栏下填写了“yes”。则还会寄给你一份需要你的上司来签署的协议(employer disclaimer of rights)。 推荐使用真实的姓名。一方面,这是有法律效应的;另一方面,毕竟作贡献也是好事,没必要使用绰号。 代码以patch的方式发送到向邮件列表,经过审核通过之后,便可以被接受,并提交到版本库中。如果你打算长期参与开发,则可以申请获得版本库的写权限,这需要一些条件,比如你对项目已经很熟悉,最主要的,是需要有一位Maintainer来保荐(sponsor)你。