【AI-提效】svn diff 配置 bcompare

问题 svn diff 配置 bcompare(20251218)

原生svn diff 没有图形化界面不好用,直接配置diff-cmd = /.../bcompare不能使用

解决方案

不废话,直接上代码

bash 复制代码
#!/bin/bash
# SVN参数转BCompare可接受格式的包装脚本(精简版,无冗余echo)

# 初始化文件路径数组
file_paths=()

# 遍历处理参数(从索引1开始,跳过脚本自身)
i=1
while [ $i -le $# ]; do
    current_arg="${!i}"

    # 过滤SVN的-u参数
    if [ "$current_arg" = "-u" ]; then
        i=$((i + 1))
        continue
    fi

    # 过滤SVN的-L参数及对应的标签
    if [ "$current_arg" = "-L" ] && [ $((i+1)) -le $# ]; then
        i=$((i + 2))
        continue
    fi

    # 收集有效文件路径
    if [ -f "$current_arg" ]; then
        file_paths+=("$current_arg")
    fi

    i=$((i + 1))
done

# 调用BCompare(仅保留错误提示)
if [ ${#file_paths[@]} -ge 2 ]; then
    /your_bcompare_path "${file_paths[0]}" "${file_paths[1]}"
else
    echo "❌ 错误:未提取到足够的文件路径(需2个,实际${#file_paths[@]}个),无法执行BCompare"
    exit 1
fi

代码链接:https://github.com/a200638012/myscripts/tree/main/bash/svn_bcompare_wapper

使用方法

  1. modify your svn config in your home dir like ~/.subversion/config
  1. uncomment diff-cmd
  2. diff-cmd = /yourpath_to_svn_bcompare_wrapper.sh
  1. chomd +x /yourpath_to_svn_bcompare_wrapper.sh
  2. now you can use svn diff xxx.file by bcompare
相关推荐
aoi1 天前
一个简单适配个人电脑的node 版本切换 skill
ai编程·前端工程化
iOS门童1 天前
用 OpenClaw Cron 定时任务,轻松实现每日计划提醒
ai编程
马腾化云东1 天前
Agent开发应知应会(langfuse):Langfuse Score概念详解和实战应用
人工智能·llm·ai编程
wangruofeng1 天前
AI 助力 Flutter 3.27 升级到 3.38 完整指南:两周踩坑与实战复盘
flutter·ios·ai编程
小碗细面1 天前
Gemini 3 Pro + Claude 4.6 免费用?这个插件做到了
ai编程
草帽lufei1 天前
Gemini3升级了,但不能正常用了
google·ai编程
Kapaseker1 天前
警惕!AI 正在毁掉你的代码能力
ai编程
一只修仙的猿1 天前
程序员还有活干吗
ai编程
moshuying1 天前
2025-2026年宏观周期转型下的普通人阶层跃迁、创业格局与求学策略深度研究报告
ai编程
王小酱2 天前
Everything Claude Code 完全长篇指南
openai·ai编程·aiops