Jon*_*wen 4 git amazon-s3 s3fs
我正在尝试在我的Debian计算机和一台OS X笔记本电脑上进行以下工作.
我想要的是某种使用Amazon S3作为后端的版本控制文件系统.
我想的是使用s3fs(使用FUSE)来安装存储桶,然后创建一个使用GIT的文件系统,每次我写文件时都会进行新的提交(我想要一个完整的版本历史记录,最长可达x天).然后,安装的文件夹应显示最新版本的文件.其中一个我不知道如何解决的问题(由于缺乏经验,我认为)是我想将文件与本地文件夹同步.当然,我可以下载所有文件,但这不是带宽友好的.
另一个问题是当前版本的s3fs似乎不适用于MacFUSE.
此外,可能不会发生的事情,但如果两台计算机同时写入文件,我想防止文件损坏.如果我理解正确,git会实现某种文件锁定本身,而不依赖于操作系统的文件锁定.
什么可以成为使这项工作的大纲?我想用这些方式存储的文件只是.tex文件和矢量图像.
我知道存在解决方案(如dropbox)但我不喜欢它是封闭源代码.
首先,我要说我不建议在s3上盲目运行git.git在运行期间会生成很多小文件; 当处理大量非常小的物体时,S3很昂贵(而且很慢).正如你猜测的那样,S3也没有锁定机制; 最终的一致性使这变得不可能.最后,git依赖于对对象数据库的快速随机访问; S3无法提供此功能,因此无论如何您都需要整个存储库的本地镜像.
相反,我建议你扩展现有的git http后端以推送到S3.这将推送单个包文件,而不是推送松散的文件.这将利用S3擅长的东西 - 大型对象的大量加载.您仍然没有锁定,但由于您决定何时手动推送,您可以找到其他方法来轻松协调事物.
| 归档时间: |
|
| 查看次数: |
2156 次 |
| 最近记录: |