gh-dash项目中的搜索与过滤功能详解

gh-dash项目中的搜索与过滤功能详解

gh-dash A beautiful CLI dashboard for GitHub 🚀 gh-dash 项目地址: https://gitcode.com/gh_mirrors/gh/gh-dash

概述

gh-dash作为一个高效的项目管理工具,提供了强大的搜索和过滤功能,帮助开发者快速定位和管理代码库中的问题和拉取请求。本文将深入解析gh-dash的搜索机制,包括基础过滤语法、模板函数以及智能过滤特性。

基础搜索语法

gh-dash的搜索功能基于GitHub原生搜索语法构建,用户可以通过定义YAML格式的过滤条件来筛选问题和拉取请求。

基本配置示例

prsSections:
  - title: 待我审核的PR
    filter: >-
      is:open
      -author:@me
      updated>={{ nowModify "-2w" }}

关键点说明:

  1. 无需指定is:pr,系统会自动添加此条件
  2. 使用>-语法可以使多行过滤条件更易读
  3. @me代表当前登录用户

高级模板函数

gh-dash扩展了GitHub原生搜索语法,提供了实用的模板函数来简化日期计算。

nowModify函数详解

nowModify函数用于计算相对日期,生成符合ISO-8601标准的日期字符串。

语法示例

updated>={{ nowModify "-1mo" }}  # 一个月前的日期

支持的时间单位

  • 基础单位:nsµsmssmh
  • 扩展单位:
    • d/D:天
    • w/W:周
    • M/mo:月
    • y/Y:年

复合表达式示例

created>={{ nowModify "-1y2w3d" }}  # 1年2周3天前

智能过滤机制

gh-dash的智能过滤功能可以根据上下文自动优化搜索范围,显著提升工作效率。

工作原理

  1. 环境变量优先:检查GH_REPO环境变量
  2. Git仓库检测:按顺序检查以下远程仓库名称:
    • upstream
    • github
    • origin
  3. 默认选择:使用git remote列出的第一个远程仓库

使用场景

  • 单仓库模式:当工作在特定仓库时,自动限定搜索范围
  • 全局模式:需要搜索所有仓库时,可关闭智能过滤

控制方式

  1. 启动时禁用:在配置中设置smartFilteringAtLaunch: false
  2. 运行时切换:使用快捷键t或自定义键绑定

最佳实践建议

  1. 组织过滤条件:将复杂条件分行书写,提高可读性
  2. 合理使用日期过滤:结合nowModify实现动态时间范围
  3. 利用智能过滤:在专注单个项目时保持开启,跨项目搜索时临时关闭
  4. 保存常用查询:在配置文件中预设常用搜索条件

通过掌握这些搜索技巧,开发者可以大幅提升使用gh-dash管理项目和代码的效率,快速定位需要关注的工作项。

gh-dash A beautiful CLI dashboard for GitHub 🚀 gh-dash 项目地址: https://gitcode.com/gh_mirrors/gh/gh-dash

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咎旗盼Jewel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值