V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
chenty
V2EX  ›  问与答

把整个硬盘目录 commit 成 git 然后系统出问题就 check 回去 可行么?

  •  
  •   chenty · 46 天前 via Android · 2782 次点击
    这是一个创建于 46 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在硬盘都好大 windows10 的垃圾也好多 有没有可能这么干 这样出问题直接 check 回去 岂不美哉?
    36 条回复    2020-10-19 12:09:45 +08:00
    jdhao
        1
    jdhao   46 天前 via Android
    git 仓库大小有限制,如果只是为了做备份,windows 有备份功能吧
    chenty
        2
    chenty   46 天前 via Android
    git 可以方便的 ignore 各种零食文件啊 还有文件版本
    @jdhao
    lychs1998
        3
    lychs1998   46 天前
    不建议这样使用 git,毕竟你除去零时文件后还是很大的……直接用自带的备份更好。
    Aixtuz
        4
    Aixtuz   46 天前
    有过跟你一样的期望,想要在出问题是最快速度恢复。
    最后用了 VHDX 差分系统。
    glfpes
        5
    glfpes   46 天前
    用 git 维护大把大把的二进制文件是我想不到的
    SingeeKing
        6
    SingeeKing   46 天前   ❤️ 3
    git 是存储全量内容的而不是版本差异,因此如果对大文件进行修改是个灾难
    xiri
        7
    xiri   46 天前 via Android
    git 不适合管理大量二进制文件,,,
    你这样的需求为啥不用专业的系统备份软件?
    YuxiangLuo
        8
    YuxiangLuo   46 天前   ❤️ 7
    居然两个人都没打对“临时文件” (狗头)
    mebtte
        9
    mebtte   46 天前
    是个狼灭
    dtgxx
        10
    dtgxx   46 天前   ❤️ 1
    直接看你的标题+你的头像=答案

    好多文件也不支持直接修改的,check 都得失败
    iRiven
        11
    iRiven   46 天前
    你这个需求叫快照
    des
        12
    des   46 天前
    防止系统被破坏?类似这个吗?
    https://support.apple.com/HT204899
    nutting
        13
    nutting   46 天前
    git 接管后是有本地缓存的吧,相当于容量 x2 了,全盘怎么搞。再说,出问题了你还怎么进系统
    nieyujiang
        14
    nieyujiang   46 天前
    git 对二进制类型的文件支持不行,这也是为啥不用 lfs,分分钟.git 膨胀上天的原因
    zxCoder
        15
    zxCoder   46 天前   ❤️ 1
    @YuxiangLuo 原来。。。。我还看了老半天以为是什么专业名词,还猜想说是不是指“平时经常用到的,跟零食一样的文件”。。。。。。
    icyalala
        16
    icyalala   46 天前   ❤️ 1
    git 不追踪空目录哈哈哈。。
    yanqiyu
        17
    yanqiyu   46 天前   ❤️ 1
    整个硬盘不行,但是对于操作系统文件可以(Linux 社区有这样的尝试),当然实现也不是 git ( git 不是干这个活的,这么多二进制用 git 怕不是爆炸),可以看看 https://silverblue.fedoraproject.org/ ,每个 install 有 commit hash, /usr 只读,但是启动的时候可以选择之前的 commit, 更新也类似于 git pull, 直接拉取上游的下一个 commit

    要是想要覆盖系统文件之外的东西,你还不如手动管理快照,要是愿意上 zfs, btrfs,用快照机制,应该也能做到你需要的效果,出问题就回滚快照。
    sparkle
        18
    sparkle   46 天前
    理论上可行,实际上性能是主要的问题
    deorth
        19
    deorth   46 天前
    你需要的是带快照的文件系统
    webshe11
        20
    webshe11   46 天前
    什么“零食文件”,明明是“临时文酱”
    imn1
        21
    imn1   46 天前
    洋大人脑子果然没有咱们好使,根本没想到可以这样用,搞得好多服务开始不久就要紧急叫停
    cheng6563
        22
    cheng6563   46 天前 via Android
    Windows 有第三方 btrfs 驱动,只要你敢用
    phobal
        23
    phobal   46 天前 via iPhone   ❤️ 1
    推荐把自己习惯的开发环境和软件都安装好,然后将它作为系统镜像,以后系统出问题了直接通过自己做的镜像恢复就好了。
    tairan2006
        24
    tairan2006   46 天前
    大哥,你听过还原精灵么

    或者你听过 ghost 么
    fihserman123
        25
    fihserman123   46 天前
    git 直接采用快照方式的直接备份,你硬盘够用吗?
    ungrown
        26
    ungrown   46 天前
    如果仅仅是为了给操作系统做增量备份的话
    给系统做镜像呗
    windows 自带一个叫做“卷影复制服务”的功能
    所以 Windows 下 NTFS 文件系统可以进行热备份
    工具的话应该不止一种
    很多年前我喜欢并常用的软件是 drive snapshot,支持差分备份
    后来再也不做系统备份了
    (发现用不到了,手里的 Windows 系统能跑好几年不出问题,就算出了问题 win10 支持热重装并能保留原系统程序和用户文件,于是系统备份对我而言变得没什么用了)
    其实 Windows 自带的系统备份不也是挺好用的吗
    wuqingdzx
        27
    wuqingdzx   46 天前
    傲梅轻松备份不好用吗?
    boris93
        28
    boris93   46 天前 via Android
    放着成熟的备份方案不用非得给自己找别扭?
    而且 git 更适合管理纯文本文件,二进制文件不是不可以,但是这么大量就太胡搞了吧
    rockcat
        29
    rockcat   46 天前
    Windows 自带的还原就可以吧。
    gxgxxn
        30
    gxgxxn   45 天前
    @YuxiangLuo 我还奇怪零食文件是啥东西呐😂
    raymanr
        31
    raymanr   45 天前
    不可行吧, 正在使用中的文件 git 是没法修改的, 除非你可以不进入 windows 就使用 git
    jeffreystoke
        32
    jeffreystoke   45 天前
    楼主的想法是完全可行的, 如果没被楼上劝退的话, 不妨看看现成的工具 ( https://github.com/bup/bup)

    说起来大概在三四年前我就在用了, 不过当时还是 PoC, 用也是小规模的, 现在回看发现还在更新有点感动, 相比 snapshot 方式的话可以只回滚单个文件不影响其他文件
    xupefei
        33
    xupefei   45 天前 via iPhone
    git 不备份文件权限。
    msg7086
        34
    msg7086   45 天前
    你的想法是对的,但是实际使用中没办法这么干。

    etckeeper 就是用 Git 之类管理 etc 配置文件的。
    Linux 下因为有包管理,所以系统本身是由包管理保证正常工作的,所以只需要管理配置文件即可。

    Windows 下没有包管理,安装的软件都是自己想办法存二进制和配置,所以一方面二进制无法保证完整性,一方面配置文件也无法单独拿出来保存和恢复。

    而且你也说了,辣鸡多,那你 checkout 回去,辣鸡不是还在?美个啥。
    mscststs
        35
    mscststs   45 天前
    我寻思 windows 自带的备份功能可以打包硬盘镜像吧。多挂一块硬盘定期备份就完事了。

    让 Git 维护二进制的话……你先想想怎么 忽略掉 系统盘的缓存和临时文件吧。
    reus
        36
    reus   43 天前
    windows 没有 btrfs,没有 zfs
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4740 人在线   最高记录 5268   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 08:21 · PVG 16:21 · LAX 00:21 · JFK 03:21
    ♥ Do have faith in what you're doing.