基于go文件同步工具的升级迭代

介绍

同样,该工具适用于多个项目不同版本的维护,文件更新和新增的同步(自动创建目录),支持自动提交svn。

升级迭代

之前的文件同步工具,依赖chrome和http包,有时候js加载页面不太稳定,所以有空闲就升级迭代。
新版本用的跨平台 GUI 工具包fyne.io/fyne, 提供了各种控件和布局等,很齐全,基本要用的都能找到,也有提供demo指导和借鉴使用,具体看包文档。

同步机制

同步多个目标项目时,以目标项目对应文件的md5为基准,如果都一样,只会随机其中一个目标项目调起工具对比一次,而其它目标项目则以对比后的文件内容覆盖式同步,减少多次调起繁琐操作。
当然也存在版本文件不同,则会调起每个目标项目文件对比,支持同个文件同步到不同版本的差异化。

工具链接

gitee: https://gitee.com/toegg/file_sync

github: https://github.com/toegg/sync_file

展示

ui界面
ui界面


错误提示弹框

错误提示

前提

  1. 下载安装BeyondCompare对比工具,工具请自行下载;

  2. 下载安装svn,并支持控制台命令操作(windows下控制台输入svn不提示错误),不需要提交svn可忽略该点;

注意:工具只支持window下使用,linux下需要重新打包即可

配置文件

配置文件conf.ini
  • 在配置文件中[files]下添加对应的项目目录
格式:"项目名" = "项目路径"
例子:"test1" = "D:\golearn\src\file_sync\etest\test_sync1""test2" = "D:\golearn\src\file_sync\etest\test_sync2"
  • 在配置文件中[ext_open]下可添加允许同步的后缀名
放开可同步的后缀名文件,多个用|隔开
格式:"ext_open_list" = ".xxx|.xxx|.xxx"
例子:"ext_open_list" = ".go|.txt|.sql"
  • 在配置文件中[others]下配置BeyondCompare工具绝对路径
格式:"beyond_path" = "路径"
例子:"beyond_path" = "F:\compare\Beyond CompareHA\BeyondCompare\BCompare.exe"

使用方法

启动exe,会显示gui界面,自动加载配置的项目列表1.左侧栏上方select下拉框,选择对应的源项目,默认选第一个2.左侧栏中间的svn自动提交框,可勾选并填写svn提交备注,同步后会自动提交svn3.左侧栏下方input框,输入所需同步的文件名,不需要带目录,文件跟文件之间需换行,如下:test.gotest.txttest.sql4.勾选右侧栏所需要同步的目标项目5.点击开始同步按钮即可6.有差异的会打开对比工具对比,对比完成后点关闭则继续往下执行程序7.同步结束后右上角关闭即可注意:勾选提交svn,需要提交时间,会在log端有相关提交输出和错误提示,完成会输出"此次操作已结束"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/199193.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是TDR(威胁检测与响应)

网络安全是被动和主动方法的混合体。过去,企业往往局限于被动的方法,随着合规性和安全策略越来越受到重视,主动方法也越来越受到关注。与其他行业相比,网络安全是高度动态的,网络安全团队采用任何可以帮助他们优化的新…

MinIo 的操作与使用

文章目录 一、Client 连通 官方 API 文档:Documentation 官方中文文档:MinIO中文文档 一、Client 连通 Java 代码: MinioClient minioClient MinioClient.builder().endpoint("http://192.168.110.110:9000").credentials("x…

Redis服务器安装配置

Redis是一种开源的NoSQL内存数据库,用于高性能的数据存储和访问。Redis支持多种数据类型,包括字符串、哈希、列表、集合和有序集合,并且支持分布式存储和操作。Redis的特点包括快速、高可用和易扩展等,适用于各种应用场景。 一、…

leetcode:LCR 122. 路径加密(python3解法)

难度:简单 假定一段路径记作字符串 path,其中以 "." 作为分隔符。现需将路径加密,加密方法为将 path 中的分隔符替换为空格 " ",请返回加密后的字符串。 示例 1: 输入:path "a.a…

ES-环境安装(elasticsearch:7.17.9,kibana,elasticsearch-head)

ES 环境搭建 1 拉取镜像 常用三件套 docker pull kibana:7.17.9 docker pull elasticsearch:7.17.9 docker pull mobz/elasticsearch-head:52 启动镜像 elasticsearch 安装 这里可以先不挂载文件启动一波,然后把容器里的文件拷贝出来 docker run -p 19200:9200 …

机器学习---朴素贝叶斯分类器的实现(对文本进行侮辱性言论和非侮辱性言论的分类)

1. loadDataSet函数 import numpy as np# 构造loadDataSet函数用于生成实验样本 def loadDataSet(): postingList[[my, dog, has, flea, problems, help, please],[maybe, not, take, him, to, dog, park, stupid],[my, dalmation, is, so, cute, I, love, him],[stop, postin…

从零开始学习 JS APL(一):完整指南和实例解析

本章内容主要是按一下来: 操作DOM BOM 比如 控制网页元 素交互等各种网页 交互效果 以下是我总结笔记(仅供参考) webAPL 获取DOM对象 变量声明有三个 var let 和 const 我们应该用那个呢? 首先var 先排除,老派写法…

JOSEF约瑟 同步检查继电器DT-13/200 100V柜内安装,板前接线

系列型号 DT-13/200同步检查继电器; DT-13/160同步检查继电器; DT-13/130同步检查继电器; DT-13/120同步检查继电器; DT-13/90同步检查继电器; DT-13/254同步检查继电器; 同步检查继电器DT-13/200 100V柜内板前接线 一、用途 DT-13型同步检查继电器用于两端供电线路的…

linux系统下农场种菜小游戏!

linux系统下农场种菜小游戏! 今天给大家分享一个linux系统下一个简单的小游戏 源码如下,在linux系统下创建一个.sh的脚本文件,复制粘贴进去即可! #!/bin/bash# 初始化变量 vegetables("生菜" "西兰花" &qu…

SpringBoot启动流程

SpringBoot启动流程 文章目录 SpringBoot启动流程SpringBoot启动流程 SpringBoot启动流程 视频链接: https://www.bilibili.com/video/BV15b4y1a7yG/?p174&spm_id_frompageDriver&vd_sourcef6debc5a79e3f424f9dde2f13891b158 看李老师讲的吧,特…

服务器数据恢复—服务器断电导致XenServer数据文件丢失的数据恢复案例

服务器数据恢复环境: 某品牌720服务器搭配该品牌某型号RAID卡,使用4块STAT硬盘组建了一组RAID10阵列。服务器上部署XenServer虚拟化平台,系统盘 数据盘两个虚拟机磁盘。虚拟机上安装的是Windows Server操作系统,作为Web服务器使用…

虾皮助手:提升Shopee卖家运营效率的必备辅助工具

随着电商市场的快速发展,越来越多的卖家选择在Shopee平台上开设在线商店。然而,随之而来的是更多的竞争和挑战。为了在这个竞争激烈的市场中脱颖而出,卖家们需要寻找一种工具来帮助他们更高效地管理和运营他们的店铺。虾皮助手(Sh…

CSS特效026:扇骨打开关闭的动画

CSS常用示例100专栏目录 本专栏记录的是经常使用的CSS示例与技巧,主要包含CSS布局,CSS特效,CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点,CSS特效主要是一些动画示例,CSS花边是描述了一些CSS…

vue创建项目,使用可视化界面安装插件

安装项目: vue create vue-app 选择默认配置就行,也可以按需选择自定义配置 vue ui通过可视化管理项目 通过可视化安装全家桶插件

连接池打满,导致页面夯住

连接池打满,导致页面夯住 1、背景生产环境中访问系统,页面延迟卡顿 2、排产思路 1)、查看日志是排查问题的第一要素(个人认为);查看日志发现使用com.alibaba.druid.pool设置最大连接数为100,已…

【android开发-15】android中广播broadcast用法详解

1,broadcast类型 在Android中,Broadcast是一种用于在应用程序组件之间传递消息的机制。它允许一个组件(发送者)将消息发送给其他组件(接收者),即使它们之间不存在直接的联系。 Android中的Bro…

挑战音频爬虫的技术迷宫:Watir和Ruby的奇妙合作

概述 音频爬虫是一种可以从网站上抓取音频文件的程序。音频爬虫的应用场景很多,比如语音识别、音乐推荐、声纹分析等。然而,音频爬虫也面临着很多技术挑战,比如音频文件的格式、编码、加密、隐藏、动态加载等。如何突破这些技术障碍&#xf…

整数和浮点数在内存中的存储​(大小端详解)

目录 一、整数在内存中的存储 二、大小端字节序和字节序判断 2.1为什么有大小端?​ 2.2请简述大端字节序和小端字节序的概念,设计一个小程序来判断当前机器的字节序。(10分)-百度笔试题 方法一(char*强制类型转换&#xff09…

迅为RK3588开发板定制Ubuntu和Debian系统-系统定制(无法联网)

在上一个小节中讲解了 ubuntu 和 debian 文件系统的定制,但那是在可以运行脚本正常构 建系统的前提下,而本小节则是针对部分特殊用户无法联网的情况。 在 source 目录下存放了已经构建完成的压缩包,如下图所示 然后使用以下命令将该压缩包解…

Hive SQL的各种join总结

说明 Hive join语法有6中连接 inner join(内连接)、left join(左连接)、right join(右连接)、full outer join(全外连接)、left semi join(左半开连接)、cr…