Subversion(SVN) 是一个广泛使用的文件版本控制系統, 它会记住每一次文件的改动。 你可以浏览文件的历史版本,也可以把文件恢复到旧的版本,或者通过SVN客户端精确比较两个版本之间做了哪些改动。
SVN具有非常先进的稳定性和协同工作能力,除此之外还提供了许多重要功能: 举例来说, 有身份认证, 权限控制等, 以及文件库浏览等等。
下面我们就来介绍如何在OnceAir上创建SVN数据仓库服务。
OnceAir提供全功能的Linux Shell命令行终端,并且支持Windows Termial。Terminal 提供一种不使用SSH puty就能执行Linux命令的方法,可防止开放ssh端口带来的安全风险。不过同时也要保险好OnceAir管理员密码,防止有人执行l恶意 Lnux Shell。
安装设置Git模块后,OnceAir则可作为Git服务器使用,此时您可以在电脑通过Git Bash命令行来clone/commit/push/pull文件到数据仓库。
Git也有很多免费的图形化工具可以提高工作效率,简化使用Git命令行的使用难度,这里主要介绍使用TortoiseGit和SmartGit从OnceAir Git仓库签出项目。
Git是一个开源的分布式版本控制系统,版本控制最主要的功能就是追踪文件的变更。它将什么时候、什么人更改了文件的什么内容等信息忠实地了已录下来。每一次文件的改变您都可以借助对比工具,查看与之前版本具体哪一行,哪一个字符做了更改。与常用的版本控制工具SVN不同,它采用了分布式版本库的方式。Git并没有全局的版本号。
您可以在OnceAir上安装Git模块,将其变成一个低功耗的Git服务器。因为Git服务器是基于SSH协议实现的,使用Git或外网访问请勿必更改默认root密码。如果您不会操作,可选择使用相对操作简单的SVN服务器。
如果您的网络分配有公网IP,您可以通过设置路由映射的方式,实现在外网访问内部的OnceAir服务器。但一般的小运营商是没有分配独立公网IP,此时您可以通过内网穿透的方式实现OnceAir网盘的外网访问。下面简单介绍一下如何设置。
OnceAir底层基于模块化Web框架OnceIO和无模式内存数据库OnceDB,每个功能的前端界面、后端逻辑、数据库定义都集中存放在模块本身,禁用或卸载即可删除。您也可以开发自己的功能模块,扩展OnceAir的功能。
OnceDoc 是 OnceAir Nas 内置的知识和文档管理模块,可直接在线编辑文档、表格、Markdown笔记甚至程序代码等,支持全文搜索,具有丰富的权限控制,您可以方便地构建自己的分享文件夹。通过OnceOA客户端,OnceDoc中的团队文件夹可与本地文件时时双向同步,实现多重备份。
HTTP 是一种无状态的协议,服务器单从网络连接上无从知道客户身份,这给交互式 Web 应用程序的实现带来了阻碍。Session 和 Cookie 一样,也是用来绕开 HTTP 的无状态性的手段之一,但与 Cookie 在客户端保存状态信息不同,Session 将用户的状态信息保存在服务器端。
当应用程序需要为某个客户端的请求创建一个 Session 的时候,服务器会首先检查这个客户端的请求里是否已包含了一个 Session 标识,即 SessionID。如果已包含一个 SessionID,则说明服务器为此客户端创建过 Session,服务器就会把这个 SessionID 对应的 Session 检索出来使用(如果检索不到,可能会新建一个);如果客户端请求不包含 SessionID,服务器就会为此客户端创建一个新的 Session 并且生成一个与此 Session 相关联的 SessionID。SessionID 的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串。这个 SessionID 将在本次响应中被返回给客户端保存(常放在 Cookie 中返回,客户端 Cookie 禁用时也可放在 URL 中)。
在互联网上, QueryString是地址的一部分, 其中包含着需要传给后台的数据,通常以?开始,以&号分割。在表单提交时,会默认以QueryString的形式向后台发送数据,OnceIO会将其存储在res.query对象上。