小米手机助手备份结果居然就是一个git的本地repo - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
xiaoxuxu
V2EX    程序员

小米手机助手备份结果居然就是一个git的本地repo

  •  
  •   xiaoxuxu 2013-12-13 14:47:46 +08:00 9208 次点击
    这是一个创建于 4371 天前的主题,其中的信息可能已经有所发展或是发生改变。
    好奇手机上是不是也是一个repo,备份还原的时候就是用git来回push?有没有人研究过的?
    22 条回复    1970-01-01 08:00:00 +08:00
    Livid
        1
    Livid  
    MOD
    PRO
       2013-12-13 14:48:38 +08:00
    挺聪明的做法。git 处理文件变化的增量是非常好的手段。
    9hills
        2
    9hills  
       2013-12-13 14:49:15 +08:00
    这个是好想法啊,用git做同步解决方案
    lijinma
        3
    lijinma  
       2013-12-13 15:00:11 +08:00
    好赞啊
    jemygraw
        4
    jemygraw  
       2013-12-13 15:00:59 +08:00
    金山快盘好像也是把。
    dorentus
        5
    dorentus  
       2013-12-13 15:08:24 +08:00
    在专业的工具的基础之上构建自己的工具,挺好。
    Xrong
        6
    Xrong  
       2013-12-13 15:17:00 +08:00
    我去,好想法。。。
    est
        7
    est  
       2013-12-13 15:35:15 +08:00
    @Livid 只有文本文件才能增量呢。sqlite3数据库等二进制格式怎么增量?
        8
    sethverlo  
       2013-12-13 15:46:38 +08:00
    @est 二进制没办法增量
    zhonghua
        9
    zhonghua  
       2013-12-13 16:11:20 +08:00
    @sethverlo 所以二进制数据和文本数据得分开两个repo放,一个用svn,一个git
    是这个意思么?
    sethverlo
        10
    sethverlo  
       2013-12-13 16:16:56 +08:00
    @zhonghua 我没用过 svn……如果 svn 可以给二进制计算增量的话那么肯定没问题,至于说分两个 repo 也不是难事儿。
    zhonghua
        11
    zhonghua  
       2013-12-13 16:22:03 +08:00
    @sethverlo 如果svn可以计算二进制增量,那GIT肯定也没问题。
    我的意思是,GIT是一个提交一个提交更新的,这个方式对于二进制数据,没有意义。
    所以,我的意思是,二进制数据就不用GIT了,用SVN,直接更新到最新就好了。
    young
        12
    young  
       2013-12-13 16:23:56 +08:00
    万一碰到 git 报 xxxx object empty 怎么办?
    难道 rm 掉之后再 git pull
    Kabie
        13
    Kabie  
       2013-12-13 16:28:50 +08:00   1
    嗯比自己做一个蹩脚的替代品聪明多了……
    dorentus
        14
    dorentus  
       2013-12-13 16:46:17 +08:00
    @zhonghua svn 需要中心服务器,实现起来更麻烦。

    不过我大致明白你的意思了,你是说在手机上,只保留指定的版本,不保留其它提交的记录。那么 git 是完全可以做到的,参见: http://stackoverflow.com/q/1209999/90172

    我没用过小米手机助手,不过据猜测的,它备份的结果应该是保存在电脑上的,那么保存成 git repo 的话,就可以自然地保留每次备份的记录、并支持手机恢复到任意备份;保存成 svn repo 也可以,不过,PC 端得实现一个 svn server,而 git 不需要。
    dorentus
        15
    dorentus  
       2013-12-13 16:52:54 +08:00
    @dorentus 上面说的好像有些乱。

    简而言之,就是 svn 可以实现的 git 也可以,两者相比,顶多是同等的,svn 并没有优势。

    至于分两个 repo 的方案,算是 premature optimization 了吧,而且复杂度也大大提升了。
    allenforrest
        16
    allenforrest  
       2013-12-13 16:56:26 +08:00
    其实用rsync也是一个聪明的做法,相比git更简单,一样能很好的解决增量备份和差异传输的目的。
    dorentus
        17
    dorentus  
       2013-12-13 16:59:50 +08:00
    @allenforrest
    但是 rsync 原生没法支持恢复到之前版本,于是如果这个功能是必需的话,就不太好用 rsync 了。
    allenforrest
        18
    allenforrest  
       2013-12-13 17:03:25 +08:00
    @dorentus 同意,同步历史和回溯,rsync不是天然具备的,git的优势在这里。
    zorceta
        19
    zorceta  
       2013-12-13 17:41:04 +08:00 via Android
    搭车求安卓git库
    auxten
        20
    auxten  
       2013-12-14 22:48:45 +08:00
    有启发!
    porcorosso
        21
    porcorosso  
       2013-12-15 12:02:54 +08:00
    不错
    moonese
        22
    moonese  
       2013-12-29 16:12:55 +08:00
    这个git repo用普通的git命令没法看log,有谁知道怎么查看备份的内容吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1064 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 23:20 PVG 07:20 LAX 15:20 JFK 18:20
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86