
Worktrunk配置指南打造个性化Git工作树管理环境【免费下载链接】worktrunkWorktrunk is a CLI for Git worktree management, designed for parallel AI agent workflows项目地址: https://gitcode.com/GitHub_Trending/wo/worktrunkWorktrunk是一款强大的Git工作树管理CLI工具专为并行AI代理工作流设计。通过灵活的配置选项你可以轻松定制工作树布局、自动化提交信息生成、设置项目钩子等大幅提升开发效率。本指南将带你一步步完成Worktrunk的个性化配置打造专属于你的Git工作环境。快速入门安装与初始化在开始配置之前确保你已经安装了Worktrunk。如果尚未安装可以通过以下命令克隆仓库并进行安装git clone https://gitcode.com/gh_mirrors/wo/worktrunk cd worktrunk cargo install --path .安装完成后首先需要初始化配置文件。Worktrunk提供了便捷的配置文件创建命令会自动生成带有详细注释的配置模板# 创建用户配置文件 wt config create # 创建项目配置文件团队共享 wt config create --project核心配置文件解析Worktrunk使用TOML格式的配置文件主要分为用户配置和项目配置两种类型各司其职用户配置文件用户配置文件~/.config/worktrunk/config.toml存储个人偏好设置包括工作树路径模板、LLM提交配置等。以下是一个典型的用户配置示例# 用户配置示例 worktree-path ~/worktrees/{{ repo }}/{{ branch | sanitize }} [commit.generation] command llm -m claude-haiku-4.5 [list] full true branches true [merge] squash true commit true rebase true remove true项目配置文件项目配置文件.config/wt.toml用于定义团队共享的生命周期钩子和项目特定设置应提交到版本控制系统中。示例# 项目配置示例 [post-create] deps npm ci env cp .env.example .env [pre-merge] test npm test build npm run build [aliases] deploy make deploy BRANCH{{ branch }}要查看当前配置和文件位置可以使用命令wt config show工作树路径定制打造高效文件组织Worktrunk最强大的功能之一是自定义工作树路径。通过灵活的模板变量你可以根据项目和分支名称自动创建有组织的工作树结构。路径模板变量Worktrunk提供了多种变量和过滤器帮助你构建理想的工作树路径{{ repo_path }}: 仓库绝对路径如/Users/me/code/myproject{{ repo }}: 仓库目录名如myproject{{ branch }}: 原始分支名如feature/auth{{ branch | sanitize }}: 文件系统安全的分支名/和\替换为-{{ branch | sanitize_db }}: 数据库安全的分支名小写、下划线、哈希后缀实用路径方案根据不同需求你可以选择以下路径方案方案1仓库同级目录默认worktree-path {{ repo_path }}/../{{ repo }}.{{ branch | sanitize }} # 创建: ~/code/myproject.feature-auth方案2仓库内隐藏目录worktree-path {{ repo_path }}/.worktrees/{{ branch | sanitize }} # 创建: ~/code/myproject/.worktrees/feature-auth方案3集中式工作树目录worktree-path ~/worktrees/{{ repo }}/{{ branch | sanitize }} # 创建: ~/worktrees/myproject/feature-auth自动化提交信息LLM集成指南Worktrunk支持集成多种LLM工具自动生成提交信息让你专注于代码而不是编写提交信息。支持的LLM工具Worktrunk支持多种LLM命令行工具只需在配置中设置相应的命令Claude Code[commit.generation] command CLAUDECODE MAX_THINKING_TOKENS0 claude -p --no-session-persistence --modelhaiku --tools --disable-slash-commands --setting-sources --system-promptllm (Python)[commit.generation] command llm -m claude-haiku-4.5aichat[commit.generation] command aichat -m claude:claude-haiku-4.5自定义提示模板你还可以自定义提交信息生成的提示模板以适应团队的提交规范[commit.generation] template Write a commit message for the staged changes below. format - Subject line under 50 chars - For material changes, add a blank line then a body paragraph explaining the change - Output only the commit message, no quotes or code blocks /format style - Imperative mood: Add feature not Added feature - Use conventional commits format: type(scope): description - Describe the change, not the intent or benefit /style diffstat {{ git_diff_stat }} /diffstat diff {{ git_diff }} /diff 命令行为定制个性化你的工作流Worktrunk允许你定制各种命令的默认行为无需每次手动输入参数。列表命令配置自定义wt list命令的默认行为[list] summary false # 启用LLM分支摘要需要[commit.generation]配置 full true # 显示CI状态、差异统计和LLM摘要 branches true # 包含没有工作树的分支 remotes false # 包含仅存在于远程的分支 timeout-ms 5000 # 整个收集阶段的超时时间毫秒合并命令配置调整wt merge的默认行为[merge] squash true # 默认压缩提交 commit true # 合并前自动提交未提交的更改 rebase true # 合并前先变基到目标分支 remove true # 合并后移除工作树 verify true # 运行项目钩子切换命令配置定制wt switch的行为[switch] no-cd false # 切换后自动切换目录 [switch.picker] pager delta --pagingnever # 用于差异预览的分页器命令 timeout-ms 1000 # 选择器数据收集的超时时间项目钩子自动化开发流程项目钩子是Worktrunk的强大特性允许你在工作树生命周期的不同阶段自动执行命令如安装依赖、运行测试等。常用钩子类型Worktrunk支持多种钩子覆盖工作树的完整生命周期post-create: 工作树创建后运行阻塞式post-start: 工作树创建后后台运行post-switch: 切换工作树后后台运行pre-commit: 提交前运行阻塞式pre-merge: 合并前运行阻塞式post-merge: 合并后运行阻塞式pre-remove: 移除工作树前运行阻塞式钩子配置示例在项目配置文件.config/wt.toml中配置钩子# 工作树创建后安装依赖 [post-create] deps npm ci env cp .env.example .env # 启动开发服务器后台运行 [post-start] server npm run dev -- --port {{ branch | hash_port }} watch npm run watch # 合并前运行测试和构建 [pre-merge] test npm test build npm run build # 切换工作树后更新终端标题 post-switch echo -ne \\033]0;{{ branch }}\\007钩子支持模板变量如{{ branch }}获取当前分支名{{ branch | hash_port }}生成基于分支名的确定性端口号。命令别名简化重复操作通过配置命令别名你可以将常用操作封装为简短命令提高工作效率。定义别名在用户配置或项目配置中定义别名[aliases] greet echo Hello from {{ branch }} url echo http://localhost:{{ branch | hash_port }} deploy make deploy BRANCH{{ branch }} test cargo test使用别名定义后可以通过wt step 别名执行wt step url # 输出: http://localhost:12345 wt step deploy # 执行: make deploy BRANCHfeature/auth环境变量覆盖灵活的配置管理所有配置选项都可以通过环境变量临时覆盖非常适合CI/CD环境或临时测试。环境变量命名规则环境变量使用WORKTRUNK_前缀配置键使用大写蛇形命名配置项环境变量worktree-pathWORKTRUNK_WORKTREE_PATHcommit.generation.commandWORKTRUNK_COMMIT__GENERATION__COMMANDcommit.stageWORKTRUNK_COMMIT__STAGE使用示例临时覆盖LLM命令用于测试WORKTRUNK_COMMIT__GENERATION__COMMANDecho test: automated commit wt merge高级技巧提升配置体验项目特定配置覆盖在用户配置中可以为特定项目设置覆盖[projects.github.com/user/repo] worktree-path .worktrees/{{ branch | sanitize }} list.full true merge.squash false aliases.deploy make deploy BRANCH{{ branch }}状态管理Worktrunk可以存储和管理各种状态信息# 获取默认分支 wt config state default-branch # 为当前分支设置标记 wt config state marker set WIP # 查看CI状态 wt config state ci-status诊断与调试使用--full选项运行诊断检查wt config show --full这将测试CI工具状态、提交生成配置和版本检查帮助你排查配置问题。总结通过本文介绍的配置选项你可以完全定制Worktrunk以适应个人工作习惯和团队协作需求。从工作树组织到自动化流程Worktrunk提供了丰富的配置能力帮助你更高效地管理Git工作流。记得定期查看官方文档docs/content/config.md获取最新的配置选项和最佳实践。现在开始打造你的个性化Git工作树管理环境吧【免费下载链接】worktrunkWorktrunk is a CLI for Git worktree management, designed for parallel AI agent workflows项目地址: https://gitcode.com/GitHub_Trending/wo/worktrunk创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考