本技术涉及文档编辑,特别是涉及一种文档还原方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
背景技术:
1、协同文档是一种文档编辑和管理工具,其核心特性在于允许多个用户同时在同一个文档上进行编辑、修改和注释,而无需担心版本冲突和数据丢失,而在实际实施中,会需要用到历史版本的文档。
2、在协同文档的历史记录还原领域,现有技术主要是文档存档法和操作历史记录法,但是当文档历史文档过多时,需要巨大的存储空间,会造成存储历史版本文档的成本花费过高;而操作历史记录法记录和处理大量操作历史可能会对系统的性能产生负面影响。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够结合文档存档法和操作历史记录法的文档还原方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本技术提供了一种文档还原方法,包括:
3、接收客户端发送的还原请求,获取所述还原请求所请求还原的目标逻辑历史版本;
4、在所述目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;其中,相邻两个逻辑历史版本中的后一逻辑历史版本用于表征相较于前一逻辑历史版本所做的修订操作记录,所述物理历史版本为将按照对应的逻辑历史版本所形成的文档进行保存后形成的历史文档;
5、根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,得到所述目标逻辑历史版本对应的文档并返回至所述客户端。
6、在其中一个实施例中,所述在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,包括:
7、在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本之间版本间隔数最小、且对应有物理历史版本的逻辑历史版本;或者,
8、在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本之间修订操作的记录次数最少、且对应有物理历史版本的逻辑历史版本;或者,
9、在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本之间时间间隔最短、且对应有物理历史版本的逻辑历史版本。
10、在其中一个实施例中,所述根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,包括:
11、在所述参考逻辑历史版本为所述目标逻辑历史版本的在前版本的情况下,根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行向前修订;
12、在所述参考逻辑历史版本为所述目标逻辑历史版本的在后版本的情况下,根据所述修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行退回修订。
13、在其中一个实施例中,所述方法还包括,还包括:
14、针对所述序列中的相邻两个逻辑历史版本,对前一逻辑历史版本至后一逻辑历史版本之间所经历的修订操作进行精简。
15、在其中一个实施例中,所述物理历史版本相应的保存过程,包括:
16、在对文档进行修订的过程中,每间隔预设时长,对按照相应时刻获得的逻辑历史版本所形成的文档进行保存,得到对应的物理历史版本;或者,
17、在对文档进行修订的过程中,对文档的修订操作的记录次数进行累计,每当累计至预设次数时,对按照相应时刻获得的逻辑历史版本所形成的文档进行保存,得到对应的物理历史版本,并对累计次数进行清零。
18、在其中一个实施例中,所述方法还包括:
19、在对所述参考逻辑历史版本对应的物理历史版本进行修订之前,将文档的修订功能进行锁定,并将当前文档记录为一个当前逻辑历史版本,在将目标逻辑历史版本对应的文档返回至客户端后,将目标逻辑历史版本对应的文档重新还原为当前逻辑历史版本对应的文档。
20、第二方面,本技术还提供了一种文档还原装置,包括:
21、接收模块,用于接收客户端发送的还原请求,获取所述还原请求所请求还原的目标逻辑历史版本;
22、查找模块,用于在所述目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;其中,相邻两个逻辑历史版本中的后一逻辑历史版本用于表征相较于前一逻辑历史版本所做的修订操作记录,所述物理历史版本为将按照对应的逻辑历史版本所形成的文档进行保存后形成的历史文档;
23、修订模块,用于根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,得到所述目标逻辑历史版本对应的文档并返回至所述客户端。
24、第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
25、接收模块,用于接收客户端发送的还原请求,获取所述还原请求所请求还原的目标逻辑历史版本;
26、查找模块,用于在所述目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;其中,相邻两个逻辑历史版本中的后一逻辑历史版本用于表征相较于前一逻辑历史版本所做的修订操作记录,所述物理历史版本为将按照对应的逻辑历史版本所形成的文档进行保存后形成的历史文档;
27、修订模块,用于根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,得到所述目标逻辑历史版本对应的文档并返回至所述客户端。
28、第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
29、接收模块,用于接收客户端发送的还原请求,获取所述还原请求所请求还原的目标逻辑历史版本;
30、查找模块,用于在所述目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;其中,相邻两个逻辑历史版本中的后一逻辑历史版本用于表征相较于前一逻辑历史版本所做的修订操作记录,所述物理历史版本为将按照对应的逻辑历史版本所形成的文档进行保存后形成的历史文档;
31、修订模块,用于根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,得到所述目标逻辑历史版本对应的文档并返回至所述客户端。
32、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
33、接收模块,用于接收客户端发送的还原请求,获取所述还原请求所请求还原的目标逻辑历史版本;
34、查找模块,用于在所述目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与所述目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;其中,相邻两个逻辑历史版本中的后一逻辑历史版本用于表征相较于前一逻辑历史版本所做的修订操作记录,所述物理历史版本为将按照对应的逻辑历史版本所形成的文档进行保存后形成的历史文档;
35、修订模块,用于根据所述目标逻辑历史版本所表征的修订操作记录与所述参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对所述参考逻辑历史版本对应的物理历史版本进行修订,得到所述目标逻辑历史版本对应的文档并返回至所述客户端。
36、上述文档还原方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,首先,接收客户端发送的还原请求,获取还原请求所请求还原的目标逻辑历史版本;在目标逻辑历史版本没有对应的物理历史版本的情况下,在由逻辑历史版本形成的序列中,查找与目标逻辑历史版本最近且对应有物理历史版本的逻辑历史版本,将查找到的逻辑历史版本作为参考逻辑历史版本;根据目标逻辑历史版本所表征的修订操作记录与参考逻辑历史版本所表征的修订操作记录之间的修订操作差异,对参考逻辑历史版本对应的物理历史版本进行修订,得到目标逻辑历史版本对应的文档并返回至所述客户端。如此,通过将文件存档方法与操作历史记录法进行结合,并以物理历史版形式设置潜在的还原起点,有效减少了文档还原时需要进行的(逆)操作数目,节省了还原操作的计算资源,提升了系统的响应速度,优化了用户体验。