Skip to content

w1217358955/updateDiff

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

脚本运行原理

  1. 根据目标git库的更新记录 对本地库进行更新
  2. 查找两个commit之间的diff 遍历diff
  3. 区分文件类型 区分删除/新增/修改
  4. 判断文件状态 文件 删除/新增 会直接修改到本地库 不会判断新增文件中是否有带替换的词 需要脚本完成后 自行进本地库进行修改
  5. 文件类型 txt/code-修改 会查验本地文件是否有规避词 替换文件是否有替换词 如果命中 会将本地文件 替换文件 放置在update路径对应的类型文件夹下
  6. 文件类型 unknow/png-修改 会直接将本地文件 替换文件 放置在update路径对应的类型文件夹下
  7. 文件类型通过后缀判断 具体什么后缀 通过json输入
  8. 此脚本只为便利 复制文件 可能会出现条件不全的时候 会出错 例如将png后缀的文件设置为code 因此需要在脚本跑完后 自行查验本地库git 修改记录 验证修改是否正常

sh-updateDiff

优先从参数中获取 参数没有则从config.json中获取
-j 可选 需要规避的词组 用;号隔开
-r 可选 需要替换的词组 用;号隔开
-w 可选 git库与脚本位置的相对路径
-l 可选 本地库与脚本位置的相对路径
-a 可选 git库 较旧的提交id
-b 可选 git库 较新的提交id

config

  • txtType

  • codeType

  • imgType
    为后缀区分字段 按;分割 带.将会匹配类型 不带.将会匹配文件名

  • judgementWord 同-j

  • replaceWord 同 -r

  • aCommit 同 -a

  • bCommit 同 -b

  • localPath 同 -l

  • workPath 同 -w

整合【mac机限定】

  1. 首先使用vscode处理合并文件夹内的本地文件与替换文件 并删除无用的那一个文件 (openVscode.command 需要通过vscode app导入code shell命令)
  2. 双击运行合并文件夹内的copy.command
  3. 脚本自动将剩下的文件重命名 并移动到本地库中

脚本运行时均会产生log 放置在脚本目录下的update文件夹

PS: 如果部分远程目录与本地目录无法做到对应 文件会默认为新增 因此需要特别检查 远程目录与本地目录不重合的部分是否有文件新增

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages