【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
相关推荐
Shockang6 小时前
OpenCode 版 OmO:职责分工、编辑校验与技能边界
ai编程
小虎AI生活7 小时前
ChatGPT for Chrome 扩展升级解读:从「你复制给它」到「替你操作浏览器」(附三步上手流程)
aigc·ai编程
金銀銅鐵7 小时前
[Java] 借助GUI展示class文件的内容(v1.0版本)
jvm·后端·ai编程
wangruofeng7 小时前
GPT-6.1 辅助我半天完成架构升级:GPT Image 提示词网站 9K+ 图片迁入 Cloudflare R2
aigc·ai编程
邵奈一8 小时前
2.5倍速不降智:Opus 5.5极速版开闸
大模型·ai编程·claude·opus5.5·极速模式
我命由我123459 小时前
智能助手通用问答边界
人工智能·python·学习·ai·学习方法·ai编程·智能体
桃西西呀10 小时前
搜「怎么做接口限流」,向量库却把「怎么做缓存」的段落递了上来
人工智能·llm·ai编程
lpfasd12311 小时前
网络盘上的同一个报错,两个 AI 各走了一条路
网络·ai编程
blackappleD11 小时前
Claude Code Hooks 入门:自动格式化、自动跑测试、拦截敏感文件
ai编程
ianzh11 小时前
两个 WorkBuddy 客户端总被“合并”解决方法
ai编程