当前位置: 首页 > news >正文

三更app下载网站东莞网站制作公

三更app下载网站,东莞网站制作公,网址注册了怎么做网站,域名查询注册信息说在前面 #x1f63c;#x1f63c;如果每天的工资取决于我们所编写的代码行数#xff0c;那么我们的生活会发生怎样的改变#xff1f;来看看你的同事们今天都提交了多少代码吧#xff0c;看看谁是卷王#xff0c;谁在摸鱼#xff08;#x1f436;#x1f436;狗头保命…说在前面 如果每天的工资取决于我们所编写的代码行数那么我们的生活会发生怎样的改变来看看你的同事们今天都提交了多少代码吧看看谁是卷王谁在摸鱼狗头保命光看代码量并无法准确衡量工作量 代码实现 获取用户列表 使用 git log 命令来获取提交记录并通过 --format%aN 参数指定只返回作者姓名。 const command git log --format%aN;使用 child_process.execSync 函数同步执行命令并将结果转换为字符串形式。.toString() 将结果转换为字符串.replaceAll(, ) 移除结果中可能存在的单引号 。 const res child_process.execSync(command).toString().replaceAll(, );首先使用 .trim() 去掉结果两端的空白字符然后使用 .split(\n) 将字符串按行拆分为数组。接着使用 [...new Set()] 创建一个 Set集合对象并通过扩展运算符 ... 将 Set 转换为数组这样就可以去除重复的作者姓名 const usersList [...new Set(res.trim().split(\n))];完整代码如下 function getUserList() {const command git log --format%aN;const res child_process.execSync(command).toString().replaceAll(, );const usersList [...new Set(res.trim().split(\n))];return usersList; }获取指定用户当天修改代码行数 使用 git log 命令来获取特定作者在当天内的提交记录。--author${username} 指定了作者姓名--sincemidnight 指定了起始时间为当天零点--until23:59:59 指定了结束时间为当天的最后一秒--prettytformat: 和 --numstat 用于指定输出格式为只包含新增和删除的行数。如果想要指定具体时间区间可以这样写: git log --since开始时间 --until结束时间 --format%aN %aE使用 child_process.execSync 函数同步执行命令并将结果转换为字符串形式使用 .trim() 去掉结果两端的空白字符然后使用 .split(\n) 将字符串按行拆分为数组每个元素代表一行输出。每一行输出的信息如下图 通过制表符/t可以将每一行分割为三个信息分别代表添加行数、删除行数、修改文件路径这里我们只需要获取添加行数和删除行数即可。从上面图片我们可以看出添加图片的时候添加行数、删除行数都会使用-占位我们需要注意下这种情况 完整代码如下 function getCommitRecord(username) {const command git log --author${username} --sincemidnight --until23:59:59 --prettytformat: --numstat;const res child_process.execSync(command).toString();// 将输出按行分割成数组const lines res.trim().split(\n);let addedLines 0;let removedLines 0;// 遍历每行输出提取新增和删除行数lines.forEach((line) {const [added, removed] line.split(\t);if (!isNaN(added)) {addedLines parseInt(added) || 0;}if (!isNaN(removed)) {removedLines parseInt(removed) || 0;} });获取所有用户当天提交记录 1、获取用户列表 const userList getUserList();2、获取每个用户的修改记录 const commitRecord []; userList.forEach((user) {commitRecord.push(getCommitRecord(user)); });3、修改行数排序并打印 1console.table 这里可以使用console.table来进行打印 console.table 是 JavaScript 中用于在控制台打印表格形式数据的函数。它接受一个包含对象或数组的参数并将其以表格的形式打印到控制台上。 当你传入一个数组时console.table 会将数组中的对象以表格的形式展示出来每个对象的属性对应表格的列对象实例对应表格的行。这对于查看复杂的数据结构比如对象数组非常有用。例如 const people [{ name: Alice, age: 25, city: New York },{ name: Bob, age: 30, city: San Francisco },{ name: Charlie, age: 28, city: Los Angeles } ]; console.table(people);上述代码会在控制台中以表格的形式打印出 people 数组中的对象数据如下图 同样地当你传入一个对象时console.table 也会以相同的方式打印出对象的属性和属性值。例如 const person { name: Alice, age: 25, city: New York }; console.table(person);2完整代码 console.table(commitRecord.sort((a, b) b.总修改行数 - a.总修改行数),[作者, 添加行数, 删除行数, 总修改行数],[border: 1px solid #fff; padding: 5px;] );体验 插件安装 npm install -g jyeontu查看修改行数 jyeontu git选择获取当天用户提交行数 源码地址 gitee https://gitee.com/zheng_yongtao/node-scripting-tool/tree/master/src/jyeontu 公众号 关注公众号『前端也能这么有趣』发送 jyeontu即可获取源码。 说在后面 这里是 JYeontu现在是一名前端工程师有空会刷刷算法题平时喜欢打羽毛球 平时也喜欢写些东西既为自己记录 也希望可以对大家有那么一丢丢的帮助写的不好望多多谅解 写错的地方望指出定会认真改进 偶尔也会在自己的公众号『前端也能这么有趣』发一些比较有趣的文章有兴趣的也可以关注下。在此谢谢大家的支持我们下文再见 。
http://www.w-s-a.com/news/365904/

相关文章:

  • 做图书馆网站模板网站建设文化策划方案
  • 惠州城乡住房建设厅网站服装设计自学零基础
  • 网站建设常态化工作机制广州骏域网络
  • h5婚纱摄影网站模板wordpress 显示下列项目
  • 广告网站推广销售北京最新消息发布
  • 完整网站源码asp拨打12355可以找团员密码吗
  • 北京有多少家网站怎么自己在百度上做网站
  • 怎样围绕网站专题发展来做ppt网站建设回龙观
  • 网站配置服务Wordpress红色网站源码
  • 外贸网站建设内容包括软件开发公司流程
  • 做中医药网站有前景吗企业网站优化公司
  • 四川建设设计公司网站海南澄迈县
  • 邳州做网站梵克雅宝项链官网价格图片
  • dede网站收录滦平县建设局网站
  • 上海网站建设开发公注册公司要求什么条件
  • 安徽汽车网网站建设wordpress 知乎
  • 网站建设的功能都需要有哪些在线平台
  • 湖南岳阳网站开发网络公司石家庄做网站的公司哪个好
  • 西安市做网站的公司门户网站对应序号是什么
  • 太原网站域名开发什么是网页界面设计
  • 做产品类网站有哪些做一百度网站吗
  • 在线视频网站建设国外最新创意产品网站有哪些方面
  • 在一个网站下建设多个子网站宣传册画册设计公司
  • 潍坊网站建设公司排名网站建设预付
  • 手机和wap网站建设crm客户管理系统模板
  • 微商城网站建设市场唐山地方志网站建设
  • 想象力做网站网站301跳转代码
  • 做暧暧小视频有声音的网站太原网页搜索排名提升
  • 公众号链接的手机网站怎么做动易2006学校网站
  • 网站网上推广网站推他网站