ChunJun是易用、稳固、高效的批流一体的数据集成框架,次要利用于大数据开发平台的数据同步/数据集成模块,使大数据开发人员可简洁、疾速的实现数据同步工作开发,供企业数据业务应用。
本文次要整顿ChunJun的各类链接以及如何提交pr、Issue的办法,心愿大家更好地参加开源,参加社区。
ChunJun百科
● 开源地址
GitHub:https://github.com/DTStack/ch...
Gitee:https://gitee.com/dtstack_dev...
● 官方网站
https://dtstack.github.io/chu...
● 疾速入门文档
https://dtstack.github.io/chu...
● 视频课程
Flink StreamSQL根底课程:
https://space.bilibili.com/67...
2021年ChunJun课程:
https://space.bilibili.com/67...
2022年ChunJun课程:
https://space.bilibili.com/67...
● 课件获取
关注公众号“ChunJun”,回复“课件”,即可取得您须要的对应课程的课件。
提交pr&Issue指南
如何提交一个优良的pr
在GitHub上提交pr是参加ChunJun我的项目开源的一个重要途径,小伙伴们在应用中的一些性能上feature或者bugfix都能够向社区提交pr奉献代码,也能够依据已有的Issue提供本人的解决方案。
● 第一步:fork ChunJun到本人的GitHub仓库
点击fork后就能够在本人仓库中看到以你名字命名的ChunJun我的项目了:
● 第二步:clone ChunJun到本地IDE
● 第三步:将DTStack/ChunJun设置为本地仓库的近程分支upstream
● 第四步:提交代码
任何一个提交都要基于最新的分支 切换分支
本地批改代码后,提交commit
commit_message格局: commit_type message
commit_type:
feat:示意是一个新性能(feature)
hotfix:hotfix,修补bug
docs:改变、减少文档
opt:批改代码格调及opt imports这些,不改变原有执行的代码
test:减少测试
eg:hotfix-12345 Fix mysql time type loses precision.
rebase近程分支
这一步很重要,因为咱们仓库中的chunjun代码很有可能曾经落后于社区,所以咱们 push commit前须要rebase,保障咱们的commit是基于社区最新的代码,很多小伙伴没有这一步导致提交的pr当中蕴含了其他人的commit
rebase后有可能呈现代码抵触,个别是因为多人编辑同一个文件引起的,只须要依据提醒关上抵触文件对抵触局部进行批改,将提醒的抵触文件的抵触都解决后,执行
依此往返,直至屏幕呈现相似rebase successful字样即可
rebase之后代码可能无奈失常推送,须要git push -f 强制推送,强制推送是一个有危险的操作,操作前请仔细检查以避免出现无关代码被强制笼罩的问题
push到github仓库
● 第五步:提交pr
以我修复kafka写入过程中呈现空指针问题为例,通过步骤四我曾经把代码提交至我的仓库master分支
进入ChunJun仓库页面,点击Pull Request
抉择head仓库和base仓库以及相应的分支
填写pr信息,pr信息应该尽量概括分明问题的前因后果,如果存在对应Issue要附加Issue地址,保障问题是可追溯的
pr提交胜利后须要一段时间代码review,您能够急躁期待一下咱们review后合入,或者间接分割咱们,提交pr的同学更有机会退出咱们共创小组。
如何正确进行pr review
● pr review
• 如果是简略的代码或者文档改变,review 完结能够间接合并
• 如果是较大的内容改变,须要对应模块owner review
• 如果是性能分支,须要pr中提供设计思路,有必要的状况下,提供设计文档
• pr 回复工夫不能超过一周
• 不符合规范的pr 在回复提醒过后仍未改变,不予合并,一周之后敞开
● review pr 的要求
• 在pr里备注修复的issue
• pr commit 模版hotfix-#issueID #fix-commit.
• 批改内容尽量放弃与issue内容统一,如果呈现无关批改,在pr中备注进去
• review 代码时留神代码格式化
如何正确提出一个Issue
issue是一种十分好的可积淀、可复现、可跟踪的交换形式,如果您发现了ChunJun有任何bug或奇怪的性能特色,请在GitHub或Gitee中提交新的Issue。
目前咱们团队次要在GitHub上解决Issue和pr相干内容,Gitee上会绝对慢一些,大家如果有Issue或者pr尽量在GitHub上提出,咱们会及时处理。
● 在 GitHub 上提交的新 Issue 分为以下几种:
• 反馈谬误 (Bug Reports)
• 提交新需要 (Feature Requests)
• 惯例问题 (General Questions)
• 性能问题 (Performance Questions)
● 进行高效发问的办法
请您详细描述存在问题+问题截图,提交到ChunJun的Issue,以便咱们迅速定位问题并作出回应。
Issue地址:
https://github.com/login?retu...
不理解如何高效进行发问的同学,请浏览上面两篇文章:
《发问的智慧》:
https://github.com/ryanhanwu/...
《社区发问指南》:
https://github.com/ryanhanwu/...
● 提交Issue须要留神的中央
提交的Issue 最好带上具体的复现问题的步骤,这样能够缩小其余同步复现问题的工夫,更快更无效地解决问题。
如果能定位到源码的问题,倡议提交一个pr来修复它,而不是期待其他同学。
社群交换技巧
除了GitHub和Gitee之外,咱们还有一个领有3000多人的开源框架技术交换群,在群内,大家能够纵情交换ChunJun相干技术和资讯,各位开发者们互帮互助,一串代码、一个倡议,都是对ChunJun的莫大帮忙。
开源框架交换钉钉群号码:30537511
对于社群,咱们心愿它可能成为一个所有对开源、对ChunJun有趣味的敌人的交换场合,而不是一个单纯的答疑群。在群里,不论是ChunJun团队成员还是你们,所有人的角色都是ChunJun的爱好者和共建者,而不是“客服”“机器人”这样的角色。
当您对于ChunJun有疑难时,咱们首先举荐您搜寻相干文档,如果不能失去答案,强烈建议您通过提交Issue和咱们进行沟通,最初才是在社群内发问。因为通过提交Issue的形式,问题能够失去积淀,社群内音讯刷新得很快,一个不小心,您的问题就杳无音信了。
咱们团队成员平时还有本人的工作,没方法守在电脑前一个个回复社群中的问题,所以怯懦地提出 Issue吧,那一刻,你就曾经变成了开源我的项目的参与者!
ChunJun团队也将依据大家的反馈,定期更新迭代官网文档,不断完善我的项目品质,和你们一起共建ChunJun。
袋鼠云开源框架钉钉技术交换qun(30537511),欢送对大数据开源我的项目有趣味的同学退出交换最新技术信息,开源我的项目库地址:https://github.com/DTStack