我正在用python编写一个包管理器,供用户安装我们在工作中编写的程序。
当‘安装’一个新的工具(这只是一个将文件/文件夹从服务器上的位置复制到用户的计算机上的过程)时,它可能会因为任何原因而在完成之前失败。
如果发生这种情况,我需要一种方法来“撤消”用户PC上所做的所有更改(我删除复制的所有内容)。
有什么技术可以实现这种“还原”功能?
(仅Windows解决方案)
发布于 2015-02-13 20:53:44
使用分布式RCS (Revision Control System),比如Git,Bazaar或Mercurial,这样你就可以轻松地传输文件,同时仍然可以检查是否一切都传输正确了。
更新将是一个简单的git/bzr/hg拉,恢复到一个旧版本将签出一个标签。
发布于 2015-02-13 21:33:14
你可以有两种解决方案
第一个是1.将文件复制到临时文件夹中,如果成功,则删除旧文件夹3.将临时文件夹移动到新文件夹中,如果
第二种方法是:1.将文件复制到一个目录中,按名称进行版本控制,如C:\Programs\v2、v3、v4等。2.如果一切正常,则创建一个连接点或指向所需目标的符号链接。
https://stackoverflow.com/questions/28499705
复制相似问题