#gitlab #productivity #time #command-line-tool #logs #cli #utility

app gitlab-timelogs

GitLab 中的时间日志 CLI 工具。gitlab-timelogs 与官方 GitLab 项目无关!

5 个版本

0.2.2 2024 年 7 月 4 日
0.2.1 2024 年 7 月 4 日
0.2.0 2024 年 7 月 4 日
0.1.1 2024 年 7 月 4 日
0.1.0 2024 年 6 月 27 日

#115命令行工具

Download history 97/week @ 2024-06-22 336/week @ 2024-06-29 79/week @ 2024-07-06 1/week @ 2024-07-13 58/week @ 2024-07-27

每月 231 次下载

MIT 许可证

260KB
505

gitlab-timelogs CLI

GitLab 中时间日志的 CLI 工具。GitLab 网页 UI 中的时间日志非常基础,用户体验也很差(2024 年 6 月,GitLab 16.11),特别是缺少概览视图。这就是 gitlab-timelogs 通过利用 GitLab API 来帮助你的地方。

此 CLI 是由开发者为希望在工作日或周结束时检查时间日志的开发者制作的。 gitlab-timelogs 官方 GitLab 项目无关!

screenshot.png (截图略有过时。最新版本显示更多信息。)

功能

gitlab-timelogs 为您提供时间日志的概览,并打印出常见错误的警告。它不允许您修改条目,但只能查看现有记录,以便您可以在 GitLab 中(如果需要)修复它们。

  • ✅ 从问题中收集时间日志(目前不支持与 MR 相关的时间日志)
  • ✅ 按周分组
  • ✅ 指定时间范围
  • ✅ 打印出常见陷阱的警告
    • 将不到 15 分钟的时间计为一个问题(通常是错误)
    • 将时间计在星期六或星期天(在正常职位中不常见)
    • 每天计超过 10 小时(在德国,10 小时是法定最大值)
  • ✅ 为 GitLab 16.11 创建。较旧和较新的版本也应该可以工作,但尚未经过测试。请注意,免费层可能不支持时间日志,而仅支持企业版。

支持的平台

(编译和运行。)

gitlab-timelogs 至少在以下平台上构建和运行

  • Linux(所有架构,我想是吧?)
  • MacOS(所有架构,我想是吧?)
  • Windows(所有架构,我想是吧?)

请注意,我仅在2024年中旬测试了这些操作系统的最新版本。这些系统的旧版本也应该可以正常工作。

使用/安装

通过 cargo

  • $cargo install https://github.com/phip1611/gitlab-timelogs

通过 Nix / 在 NixOS 上

  • 选项 A:将 gitlab-timelogs.nixosModules.default (gitlab-timelogs 指的是 flake 输入) 添加到您的 NixOS 配置模块中,这将把 gitlab-timelogs 添加到系统范围内的软件包中。
  • 选项 B
    • B1: $ nix shell github:phip1611/gitlab-timelogs
    • B2: $ nix run github:phip1611/gitlab-timelogs -- <args>
  • 选项 C:将此 flake 作为输入添加,并将软件包添加到系统配置中

用法

  • $gitlab-timelogs --帮助
  • $gitlab-timelogs --主机gitlab.vpn.cyberus-technology.de --用户名pschuster --令牌 ********** --之后 2024-06-01 --之前 2024-06-30

配置

  1. 通过 CLI 选项。输入 --help 以获取指导。
  2. 通过环境变量
    • GITLAB_HOST
    • GITLAB_USERNAME
    • GITLAB_TOKEN
  3. 通过配置文件,该文件位于 ~/.config/gitlab-timelogs/config.toml (UNIX) 或
    %LOCALAPPDATA%/gitlab-timelogs/config.toml (Windows),内容如下: \
    gitlab_host = "gitlab.example.com"
    gitlab_username = "<user>"
    gitlab_token = "<token>"
    

MSRV

MSRV 是 Rust 稳定的 1.74.0

趣闻

创建此软件的主要动机是 GitLab 网页 UI 的时间记录用户体验极其糟糕。例如,输入掩码将 1h 30 转换为 3d 7h 而不是 1h 30m。这个常见的陷阱令人难以置信地令人烦恼,难以发现 - 对我们的大量时间记录产生了不良影响。

因此,我在 Cyberus Technology GmbH 的工作时间中创建了此软件,以提高我们的内部生产力。我们热爱开源!有兴趣加入一个酷炫的雇主?请联系我们!

依赖

~8–21MB
~319K SLoC