上图是本地某个项目代码提交分析结果。
1. 项目简介
今天给大家分享的一个项目是 code996 ,可以帮助大家根据 Git 项目的 commit 时间分布,快速了解项目及节奏及加班情况。
尤其是对于作为新人刚入职一家公司,不清楚项目组日常工作节奏,这是一个非常快捷的了解方式。
2. 用法示例
用法非常简单,对于 Mac 或 Linux 用户,在 Git 项目的根目录,执行以下命令:
curl -fsSL https://fastly.jsdelivr.net/gh/hellodigua/code996/bin/code996.sh | bash
Windows 用户, 下载该脚本(下载方式文末提供)后,然后将该脚本移至要分析的 Git 项目目录,并执行以下命令:
sh code996.sh
开源圈本地演示
由于我这边是 Windows 系统,因此执行的先在官网下载了这个脚本,复制到 某个项目提交的 根目录:
在git bash窗口,执行:
sh code996.sh
执行时间非常快,完成后,会自动打开浏览器分析界面。
首先是项目加班情况总览
其次是按小时,按天的commit 提交分布分析加班时长情况:
3. 该项目脚本的工作原理
-
使用 git-log 对项目当前的分支进行查询,得到以小时汇总和以天汇总的 commit 统计结果
-
将本地脚本得到的查询结果转为 URL 参数,并打开 URL 到浏览器
-
从 URL 拿到数据,并使用一些规则处理,并将结果可视化展现
4. 其他疑问解答
Q:996 指数是什么?
-
996 指数是本项目定义的,用于反映项目加班情况的数据指标。
-
在对加班情况标准化之后,我们可以方便的对跨团队、跨公司项目的工作强度进行对比。
Q:什么情况下 code996 的分析结果不准确?
-
脚本默认统计的是项目整体的提交时间,代表了项目中的所有参与者在这段时间的工作状态,可能与个人的实际情况有偏差
-
除了 coding,我们还需要开会、写文档、学习、摸鱼等,因此它也无法覆盖实际的工作时间
-
跨国、跨时区开发的项目无法正确统计
-
工作时间不固定的项目(如个人开源项目)也无法统计
5. 总结
从使用步骤可以看到,该项目用法非常简单,Linux和Mac系统甚至可以在线直接调用分析,Windows系统也就是下载一个 4kb的脚本即可本地执行,然后可视化的看到直观的结果。
无论是自己团队内部分析,亦或者是多团队工作强度比较,都是一个不错的比较方法。
项目链接: https://github.com/hellodigua/code996
用法及脚本下载:https://hellodigua.github.io/code996/#/
写在最后(私活源码)
推荐一个后台管理系统。功能完整,代码结构清晰。值得推荐。
项目介绍
本项目系统是一款基于 SpringBoot + Bootstrap 的极速后台开发框架,可以用于所有的 Web 应用程序,易读易懂。RuoYi 支持集群,支持多数据源,支持分布式事务,拥有完善的权限管理。页面美观,完全响应式布局让你无论是电脑、平板还是手机等,都可随意使用。
运行系统
-
首先我们将项目下载到本地,在
Gitee
下载页面下载解压到工作目录。 -
导入到
Eclipse
,菜单File
->Import
,然后选择Maven
->Existing Maven Projects
,点击Next
> 按钮,选择工作目录,然后点击Finish
按钮,即可成功导入。 -
创建数据库
ry
并导入数据脚本ry_2021xxxx.sql
,quartz.sql
。 -
打开项目运行
com.ruoyi.RuoYiApplication.java
,出现如下图表示启动成功。
(♥◠‿◠)ノ゙ 若依启动成功 ლ(´ڡ`ლ)゙
.-------. ____ __
| _ _ \ \ \ / /
| ( ' ) | \ _. / '
|(_ o _) / _( )_ .'
| (_,_).' __ ___(_ o _)'
| |\ \ | || |(_,_)'
| | \ `' /| `-' /
| | \ / \ /
''-' `'-' `-..-'
-
最后打开浏览器,输入:(http://localhost:80 (opens new window)) (默认账户/密码:
admin/admin123
)若能正常登陆即说明搭建成功。
内置功能
本项目系统内置了多种后台管理的功能,包含系统管理、系统监控、系统工具。
系统管理
-
用户管理:用户是系统操作者,该功能主要完成系统用户配置。
-
角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
-
菜单管理:配置系统菜单,操作权限,按钮权限标识等。
-
部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
-
岗位管理:配置系统用户所属担任职务。
-
字典管理:对系统中经常使用的一些较为固定的数据进行维护。
-
参数管理:对系统动态配置常用参数。
-
通知公告:系统通知公告信息发布维护。
-
操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
-
登录日志:系统登录日志记录查询包含登录异常。
系统监控
-
在线用户:当前系统中活跃用户状态监控。
-
定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
-
服务监控:监视当前系统 CPU、内存、磁盘、堆栈等相关信息。
-
缓存监控:对系统的缓存查询,查看、清理等操作。
系统工具
-
表单构建:拖动表单元素生成相应的HTML代码。
-
代码生成:前后端代码的生成(java、html、xml、sql)支持 CRUD 下载 。
-
系统接口:根据业务代码自动生成相关的 api 接口文档。
项目介绍
相信大家很多人都被公司领导要求过,说让大家来开发一个微信公众号的后台系统吧,大家是不是对微信这个各种繁琐的条件弄得非常头疼,今天给大家分享出一块源代码,大家以后如果有需要的,可以直接拿过来复制一下使用呦。
本项目系统是一个支持公众号管理系统,支持多公众号接入。本项目提供公众号菜单、自动回复、公众号素材、简易CMS、等管理功能,请注意本项目仅为管理后台界面,需配合后端程序wx-api一起使用。
项目简介
本项目系统是一个微信公众号管理系统,目前主要实现了如下功能:
● 公众号菜单管理
● 消息自动回复
● 素材管理
● 模板消息
● 粉丝管理
同时它提供了如下跟公众号无关的功能
● CMS文章管理
● 对象存储
● 权限管理(管理后台菜单权限、接口权限、角色权限)
技术选型
-
核心框架:Spring Boot
-
安全框架:Apache Shiro
-
持久层框架:MyBatis-Plus
-
公众号开发框架:WxJava
-
后端脚手架:renren-fast
-
页面交互:Vue2.x
-
UI框架:ElementUI
-
管理后台界面模板:renren-fast-vue
-
富文本编辑器:tinymce5
功能演示
源码获取方式:
扫码关注本号,后台回复 私活
扫码关注本号,后台回复 私活
持续关注本号,分享更多私活源码