0. 前言
所需知识储备:了解Git。
需要指出的是,Windows版的版本号停留在1.4(根据https://bitbucket.org/hbons/sparkleshare/downloads),而macOS版的版本号为3.28
根据作者在github的回复,Windows版本的sparkleshare将不再更新由于变动过大,除非有其他人愿意接手维护Windows版本的UI。不过目前看起来最新Windows版跟最新macOS版功能几乎无差异。
目录如下
1. 简介
2. 基本使用
2.1 安装SparkleShare
2.2 连接Git远程仓库
2.3 特别强调
1. 简介
在写论文,或者还是写各种报告时,我们经常会面临着这样一个问题:文档十分地重要,所以需要实时同步备份,而且需要保存多个版本。要手动做这样一件事实在是太过繁琐了,我们可以借助SparkleShare和Git远程仓库来帮助我们自动完成这一任务。
在介绍SparkleShare这款软件之前,我们先了解一下Git是什么,因为SparkleShare是建立Git这款软件之上。Git是一款优秀的被广泛使用的版本控制软件,简而言之,它可以帮助你实现对一个文件的不同版本管理。例如一个word文档被修改了很多次,而每一个版本都需要保留,如果没有版本控制系统,你需要手动保存每一个版本的word文档为一个文件,而在Git的帮助下,每一个版本都会被自动保存,你无需再单独保存每一个版本,文件随时可以恢复至你指定的版本。不过本文并不会详细讲解Git的使用,因为实际上你也不需要。想详细了解的话,推荐看一下这篇Git教程。
Git实现了对于文件的版本控制,但我们需要手动地提交每一次修改。另外只在本地保存文件的不同版本是不安全,我们需要将文件修改同步到云端(即Git远程仓库)。SparkleShare便为我们做了这样一件事,在Git基础上,自动进行修改的提交并同步到云端。SparkleShare是一款免费开源的软件,目前支持Windows、macOS和Linux系统。 尽管SparkleShare可以同步任一类型的文件,但更合适同步文本文件,详细适用范围见下图。
2. 基本使用
2.1 安装SparkleShare
进入官网下载对应版本的SparkleShare,此处以Windows版本为例(macOS版本的操作十分类似,Linux版本略),下载后双击安装即可。
第一次运行需要填写用户名和邮箱,随后一路继续,最后点击finish即可。
复制下面这个Client ID,后面会用到。
2.2 连接Git远程仓库
你可以选择自行搭建一个Git服务器并创建一个远程仓库,也可以选择诸如github、码云等提供Git仓库托管服务的网站来建立远程仓库。这里先讲解利用码云(github可以以类似步骤进行)搭建远程仓库。
在码云注册账号并登陆,点击创建仓库。
设置仓库名称,设置仓库为私有(否则你的文件将是对所有人公开),最后点击创建。
在码云打开设置,点击SSH公钥,将刚才复制的Client ID粘贴到公钥处并设置标题,点击确定。
此时我们转到SparkleShare,添加这个远程仓库。
托盘处找到SparkleShare图标,并选择Add hosted project。
选择On my own server,Address处填入ssh://git@gitee.com,Remote path处填入/cloudsync/test.git(此处根据个人情况修改,按/{用户名}/{仓库名}.git格式来填)。
最后点击Add,即可完成添加,系统图片单机SparkleShare图标即可快捷打开文件夹。
你在该文件夹下所做的修改都会被实时同步到远程仓库上,并保留所有版本。
版本控制在Recent Changes中。
2.3 特别强调
需要强调的是,在实际测试中,尽管SparkleShare客户端启动或者提交修改时会从远程仓库拉取最新版本,但是如果有多个客户端(假设有A、B)同时在线使用同一个文件夹,客户端A对文件夹中文件的修改不会即时通知客户端B,数分钟后才会更新此文件。也就是说,目前sparkleshare适合个人文件的多版本备份和以及同时只有一个客户端在线的同步,不建议直接在远程仓库修改文件。
由于git的限制,不适合一次性同步大量文件。
修改文件保存路径在sparkleshare文件夹里的config.xml(我的位置是 C:UserscloudsyncAppDataRoamingsparkleshare)里面修改。
在<sparkleshare>标签下添加<folders_path>。中间是你要的目录。同时在对应<folder>标签下添加<path>,内容一样。
示例
<?xml version="1.0" encoding="UTF-8"?>
3.进阶使用
3.1 搭建个人git服务器
待更