提交了一个补丁
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.0,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
提交了一个补丁
补丁的最佳方式提供错误修正或提出增强Symfony。ob娱乐下载
步骤1:设置您的环境
安装软件栈
在Symfony工作之前,设置一个友ob娱乐下载好的环境使用以下软件:
- Git;
- PHP版本5.5.9或以上。
谨慎
在Symfonob娱乐下载y 2.7之前,5.3.3最小的PHP版本。在Symfonob娱乐下载y 3.0之前,是5.3.9最小版本。请牢记这一点,如果你是工作在Symfony的较早版本的bug修复。ob娱乐下载
配置Git
设置用户信息与你的真实姓名和工作电子邮件地址:
1 2
git配置全球user.name美元“你的名字”git配置美元——全球用户。电子邮件you@example.com
提示
如果你是新的Git,强烈推荐阅读优秀的和自由的ProGit书。
提示
如果您的IDE创建配置文件在项目的目录中,您可以使用全球.gitignore
文件(对于所有项目)或. /信息/排除
文件(每个项目),忽略它们。看到GitHub的文档欧宝官网下载app。
提示
Windows用户:Git安装时,安装程序会问如何处理线的结局,并建议更换所有低频CRLF。这是错误的设置如果你想Symfony作出自己的贡献!ob娱乐下载选择原有方法是你最好的选择,如Git将转换你的换行的存储库。如果你已经安装了Git,你可以检查这个设置的值通过键入:
1
git配置core.autocrlf美元
这将返回“false”,“输入”或“真正的”;“真”和“假”是错误的价值观。将其更改为“输入”通过键入:
1
git配置美元——全球核心。autocrlf输入
取代——全球的地方如果你想把它只对活动库
Symfony的ob娱乐下载源代码
Symfony的ob娱乐下载源代码:
- 创建一个GitHub账户和登录;
- 叉的ob娱乐下载Symfony库(点击“叉”按钮);
- “分叉行动”完成后,在本地克隆叉(这将创建一个
ob娱乐下载
目录):
1
git美元克隆git@github.com:用户名/ symfob娱乐下载ony.git
- 添加上游库作为远程:
1 2
美元cdob娱乐下载symfony git远程增加上游git:美元/ /github.com/symfony/symfony.git
步骤2:你的补丁
许可
在你开始之前,你必须知道所有的补丁你要提交必须下发布麻省理工学院的许可在你提交,除非显式指定。
选择正确的分支
在一个补丁工作之前,你必须确定你在哪个部门需要工作:
2.7
修正一个错误,如果你是为现有的特性或想要改变,落入列表可接受的补丁版本的变化(你可以选择更高的分支,如果你介绍了修复的功能在后面的版本);
主
如果你添加一个新的功能。
请注意
所有的bug修复合并成维护分支也定期合并到最近的分支。例如,如果您提交的补丁2.7
分支,补丁也将应用上的核心团队主
分支。
创建一个主题分支
每次你想工作在一个补丁一个bug或增强,创建一个主题分支:
1
git checkout美元- b BRANCH_NAME主人
或者,如果你想要提供的错误修复2.7
分支,首先跟踪远程2.7
本地分支:
1
git checkout - t起源/ 2.7美元
然后创建一个新的分支2.7
部门工作错误修复:
1
git checkout - b BRANCH_NAME 2.7美元
提示
为您的分支(使用描述性名称ticket_XXX
在哪里XXX
机票号码是一个bug修复好习惯)。
上面的付款命令自动切换到新创建的代码分支(检查你正在研究的分支git分支
)。
你的补丁
工作的代码尽可能多的你想要提交多达你想要的;但请记住以下几点:
- 读到的Symfonyob娱乐下载约定并遵循编码标准(使用
git diff -检查
检查尾部空格——也读下面的提示); - 添加单元测试来证明虫子是固定的,或者新功能实际上作品;
- 努力不是打破向后兼容性(如果你必须这样做,试图提供一个兼容层支持老方法)——补丁打破向后兼容性更少被合并的机会;
- 原子和逻辑上独立的提交(使用的力量吗
git变基
有一个干净的历史和逻辑); - 从来没有解决编码标准在某些现有的代码,因为它使代码评审更加困难;
- 写好提交消息(参见下面的提示)。
提示
良好的提交消息是由总结(第一行),可选地紧随其后的是一个空行和一个更详细的描述。摘要应该开始与组件在方括号(你工作(DependencyInjection)
,(FrameworkBundle)
,……)。用一个动词(固定的……
,添加……
,…)开始总结,不要添加在最后一段。
准备提交你的补丁
当你的补丁不是一个bug修复(当你添加一个新的功能或改变现有的一个实例),它还必须包括以下:
- 相关的变化的解释
更新日志
文件(s) ((公元前打破)
或者是(弃用)
时,必须使用前缀相关); - 解释如何升级现有的应用程序相关的
升级
文件如果打破向后兼容性的变化或者轻视的东西最终将打破向后兼容性。
第三步:提交你的补丁
当你觉得你的补丁已经准备好提交,遵循以下步骤。
变基你的补丁
之前提交你的补丁,更新你的分支(如果需要一段时间来完成你的需要更改):
1 2 3 4 5
git checkout掌握上游git获取git美元美元合并上游/主git checkout BRANCH_NAME git美元变基的主人
提示
取代主
之前与您所选择的分支(如。2.7
如果你正在一个错误修复
当在做变基
命令,您可能必须解决合并冲突。git状态
将告诉你unmerged文件。解决所有的冲突,然后继续变基:
1 2
美元git添加…#添加解析文件git变基——美元继续
检查所有测试仍然通过,推动你的远程分支:
1
git推动美元——迫使BRANCH_NAME起源
做一个拉请求
你现在可以把请求的ob娱乐下载symfony / symfony
GitHub库。
提示
小心点你的拉向请求ob娱乐下载symfony: 2.7
如果你想要核心团队将根据错误修复2.7
分支。
为了缓解核心团队的工作,总是在将请求消息中包含修改后的组件,如:
1 2
(Yaml)固定的东西(形式)(Validator) [FrameworkBundle]添加一些东西
默认拉请求描述包含一个表,你必须填写适当的答案。这将确保贡献可能审查没有不必要的反馈循环,你的贡献可以尽快列入Symfony。ob娱乐下载
一些答案的问题引发更多的要求:
- 如果你的回答肯定“Bug修复?”,check if the bug is already listed in the Symfony issues and reference it/them in "Fixed tickets";
- 如果你的回答肯定“新特性?”,you must submit a pull request to the documentation and reference it under the "Doc PR" section;
- 如果你的回答肯定“BC休息?”,the patch must contain updates to the relevant
更新日志
和升级
文件; - 如果你的回答肯定“用法吗?”,the patch must contain updates to the relevant
更新日志
和升级
文件; - 如果你回答没有测试通过,您必须添加一个项目一个todo - list的行为必须修复完成测试;
- 如果“许可证”不是麻省理工学院,只是不提交拉请求,因为它不会被接受。
如果一些之前的需求没有得到满足,创建一个todo - list和添加相关项目:
1 2 3
——[]修复测试作为他们尚未更新-[]文档提交变化[]文档BC优惠欧宝官网下载app
如果代码还没有完成,因为你没有时间完成它还是因为你想要的早期反馈在你的工作上,添加一个todo - list:项
1 2
————[][]完成代码收集反馈为我改变
只要你在为todo - list条目,请前缀拉请求标题用“(在制品)”。
把请求中的描述,给尽可能多的细节您的更改(不要犹豫给代码示例来说明你的观点)。如果你把请求是关于添加或修改一个现有的一个新特性,解释变化的基本原理。拉请求描述帮助代码评审和它作为一个参考当代码合并(拉请求描述和其相关的评论是合并提交消息的一部分)。
除了这个“代码”拉请求,你必须发送一个请求欧宝官网下载app文档存储库在适当的时候来更新文档。欧宝官网下载app
修改你的补丁
基于反馈拉请求,您可能需要重做你的补丁。在重新提交补丁之前,变基上游/主
或上游/ 2.7
,不要合并;和力推动原点:
1 2
git上游变基- f /主git推动美元——迫使BRANCH_NAME起源
请注意
在做一个推,力
,总是显式地指定分行名称,以避免破坏其他分支回购(——力
告诉Git,你真的想仔细惹事情这样做)。
主持人问你“南瓜”早些时候提交。这意味着您将许多提交转换为一个承诺。今天这不再是必要的,因为Symfony项目使用的专有工具自动南瓜合并之前提交。ob娱乐下载