首页
/ Gut-Sync 技术文档

Gut-Sync 技术文档

2024-12-29 13:59:17作者:柏廷章Berta

本文档将详细介绍如何安装、使用以及配置 Gut-Sync 项目,帮助用户更好地理解和运用这个实时双向文件夹同步工具。

1. 安装指南

通过 curlbash 安装

如果不考虑安全性,可以尝试运行以下命令:

bash -c 'S="3bceab0bdc63b2dd7980161ae7d952ea821a23e693cb74961b0d41f61f557489";T="/tmp/gut.sh";set -e;wget -qO- "https://www.tillberg.us/c/$S/gut-1.0.3.sh">$T; echo "$S  $T"|shasum -a256 -c-;bash $T;rm $T'

此命令将下载并安装正确的 gut Go 二进制文件到 /usr/local/bin/gut

从源码安装

要从源码安装,首先需要安装 Go 编译器(版本 1.4 或更高)。Go 安装文档是一个很好的起点,如果您还没有设置 Go。

安装 Go 后,还需要设置您的 GOPATH。您可能只想使用默认设置:

export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

然后运行以下命令安装 Gut-Sync:

go get github.com/tillberg/gut

默认情况下,Gut-Sync 将下载(并验证)预编译的二进制文件。您可以选择从源码构建这些文件,但需要相同的依赖(如 build-essentials、autoconf 等),这需要使用 --build-deps 参数。

2. 项目的使用说明

假设您想创建一对链接文件夹,本地为 ~/work,远程服务器为 username@my.server.com:~/work2。打开终端并运行以下命令:

$ gut sync ~/work username@my.server.com:~/work

此命令将在本地 ~/work 中设置 Gut 仓库,并将其克隆到远程服务器上的 ~/work2 目录,然后开始监视两端的文件系统变化。

在另一个终端中,您可以测试 Gut 的同步功能:

$ cd ~/work
$ git clone https://github.com/tillberg/gut.git
$ cd gut
$ rm util_test.go
$ git add . --all
$ git commit -m 'made all tests pass'

然后切换到另一台主机并查看更改。

$ cd ~/work2/gut
$ git log --stat
# ... <- 您应该能看到刚刚提交的更改
$ gut log --stat
# ... <- 您应该能看到 *所有* 文件更改记录,包括在 ~/work2/gut/.git/ 中的更改

3. 项目API使用文档

Gut-Sync 使用 Git 作为底层同步机制,因此大多数 Git 命令都可以在 Gut 仓库中使用。例如:

$ gut init        # 初始化 Gut 仓库
$ gut add .       # 添加更改的文件到暂存区
$ gut commit -m '提交信息'  # 提交更改
$ gut log         # 查看提交历史

请注意,Gut-Sync 使用了修改版的 Git,名为 Gut,以便能够遍历 .git 文件夹。

4. 项目安装方式

项目安装方式已在上述“安装指南”部分详细描述。

  • 通过 curlbash 安装:使用上述提供的 curlbash 命令。
  • 从源码安装:通过设置 GOPATH 和安装 Go 编译器,然后运行 go get github.com/tillberg/gut

以上即为 Gut-Sync 的安装、使用和配置指南。希望这份文档能帮助您更好地使用 Gut-Sync 实现实时双向文件夹同步。

登录后查看全文
热门项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
162
2.05 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
96
15
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
199
279
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
60
16
Git4ResearchGit4Research
Git4Research旨在构建一个开放、包容、协作的研究社区,让更多人能够参与到科学研究中,共同推动知识的进步。
HTML
22
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
0
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
950
557
risc-v64-naruto-pirisc-v64-naruto-pi
基于QEMU构建的RISC-V64 SOC,支持Linux,baremetal, RTOS等,适合用来学习Linux,后续还会添加大量的controller,实现无需实体开发板,即可学习Linux和RISC-V架构
C
19
5