有没有二进制的版本管理软件推荐 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
zealinux
V2EX    程序员

有没有二进制的版本管理软件推荐

  •  
  •   zealinux 2021-05-30 16:58:10 +08:00 4971 次点击
    这是一个创建于 1595 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Mac 下管理 MS Office 家的 pptx,xlsx 文件, 还有 jpg/png 等二进制文件。

    这方面 git 不适用

    27 条回复    2021-05-31 22:34:15 +08:00
    BeautifulSoap
        1
    BeautifulSoap  
       2021-05-30 17:01:21 +08:00 via Android
    svn 满足你需求
    GordianZ
        2
    GordianZ  
       2021-05-30 17:02:35 +08:00
    你需要的是版本比对工具(如 Beyond Compare)来展示不同版本差异。这跟 git 都不搭界,git 存二进制一点问题都没有。
    cmdOptionKana
        3
    cmdOptionKana  
       2021-05-30 17:12:52 +08:00
    可以看看这个,作者在 V 站宣传过几次 https://www.vfilename.com/
    BeautifulSoap
        4
    BeautifulSoap  
       2021-05-30 17:14:56 +08:00   1
    @GordianZ git 可以存二进制,但并不适合用来存二进制。git 存二进制文件不是按照差分存的,二进制文件哪怕只改了一个字节 git 都会把二进制文件给完整存一份。1G 的二进制文件每次只改 1 字节,改个 20 次,那么 git 的 repo 体积会增加 20GB 。这方面 svn 更合适,对二进制文件 svn 是按照差分存的

    当然无论是 svn 、git 对二进制都没法展示 diff,所以如果 lz 需求是想知道 diff 的话,找的不应是版本管理软件
    Rheinmetal
        5
    Rheinmetal  
       2021-05-30 17:28:46 +08:00
    pptx xlsx 里面是 xml 可以配置成文本 diff
    图片上 git lfs ?
    d5
        6
    d5  
       2021-05-30 17:32:01 +08:00
    随手另存为。文件名加上_20210530_3 之类的后缀做区分即可。还能便捷排序。。。
    ho121
        7
    ho121  
       2021-05-30 17:37:26 +08:00 via Android
    用 office 的审阅功能?
    Yadomin
        8
    Yadomin  
       2021-05-30 17:48:48 +08:00 via Android   1
    存到 OneDrive 里就带版本管理了
    codehz
        9
    codehz  
       2021-05-30 17:49:21 +08:00 via Android
    @BeautifulSoap 文本文件也不是存差异的(
    wangkun025
        10
    wangkun025  
       2021-05-30 17:54:26 +08:00
    选择了 office 的话,这个问题就无解了吧。
    毕竟 office 文件的格式非常复杂。
    neoblackcap
        11
    neoblackcap  
       2021-05-30 18:48:18 +08:00
    @codehz 但是文本文件可以压缩,这也是为什么要搞 git-lfs 的一个原因。

    @zealinux 古有 svn, perforce,现有 Mercurial (Hg)。选一个自己喜欢用的就好。如果是比较熟悉 git 的话,那么用 hg 挺合适的,都是 DVCS 。
    MarkLeeyun
        12
    MarkLeeyun  
       2021-05-30 18:48:59 +08:00
    啊。这。老哥怕是对二进制有什么误解。这些叫 富文本文件。
    wellsc
        13
    wellsc  
       2021-05-30 18:54:48 +08:00
    Howlaind
        14
    Howlaind  
       2021-05-30 19:00:30 +08:00
    @MarkLeeyun #12 也没说 rtf 文件呀
    MarkLeeyun
        15
    MarkLeeyun  
       2021-05-30 19:04:55 +08:00
    @Howlaind 啊。这。咱这理解的。好吧。不过这类文件确实比较难以管理。
    xiaoyiyu
        16
    xiaoyiyu  
       2021-05-30 22:05:38 +08:00 via iPhone
    office 的话有 pandoc 还可以 diff
    http://pandoc.org/
    图片就不太方便了,看其他老哥回答
    xiaoyiyu
        17
    xiaoyiyu  
       2021-05-30 22:06:35 +08:00 via iPhone
    @xiaoyiyu pandoc 可以和 git 结合使用
    zjsxwc
        18
    zjsxwc  
       2021-05-30 22:16:39 +08:00 via Android
    二进制文件怎么 diff,怎么 merge 解决冲突,
    每种二进制文件都有自己的格式标准哦,
    除非指定二进制文件类型,比如 office 文件的版本管理,比如 bmp 文件的版本管理,

    而 jpg 、mp4 这种套了容器压缩的本事就很
    zjsxwc
        19
    zjsxwc  
       2021-05-30 22:17:23 +08:00 via Android
    而 jpg 、mp4 这种套了容器压缩算法的本身就很复杂了,diff 很难
    knives
        20
    knives  
       2021-05-30 22:26:14 +08:00
    git lfs 个人觉得算是可用的,实现原理基本相当于用 git 管理文件的引用,文件通过 webdav 之类的协议另外管理;但不知道能不能满足楼主的需求。
    icyalala
        21
    icyalala  
       2021-05-30 22:33:05 +08:00
    现在的 docx 、xlsx 之类的文件,实际就是把一堆 xml 和资源文件打成 zip 包然后改个扩展名,所以本质是 zip 包。
    要不然用与 Office 集成的相关工具,要不然就直接 SVN 、Perforce,反正很多大公司也这么用。
    hoyixi
        22
    hoyixi  
       2021-05-30 23:09:50 +08:00
    有些网盘提供这种版本管理功能,但是大概率付费
    SingeeKing
        23
    SingeeKing  
    PRO
       2021-05-31 01:38:17 +08:00 via iPhone
    想要存差异的话 1L 不就说了,svn 就可以啊

    如果只是想保存历史版本又没那么高的需求,各种网盘都支持版本管理的,我知道的坚果云是增量存储,Dropbox 看具体文件类型( VeraCrypt 的增量其他大多都不是增量)
    chchwy
        24
    chchwy  
       2021-05-31 08:50:20 +08:00
    以前的 TortoiseSVN 可以比 office 文件,可以 diff .docx,在不清楚。
    balabalaguguji
        25
    balabalaguguji  
       2021-05-31 09:29:42 +08:00
    SVN 对二进制支持挺好的,https://svnbucket.com
    ThunderEX
        26
    ThunderEX  
       2021-05-31 11:06:51 +08:00
    有一个 git filter 叫做 rezip: https://github.com/costerwi/rezip
    原理是 docx 之类本质是打包的 xml,这个 filter 让 git 去存储原始的 xml 而不是 zip 包
    12101111
        27
    12101111  
       2021-05-31 22:34:15 +08:00
    https://github.com/ostreedev/ostree
    主要是给 flatpak 和一些云原生操作系统用的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     979 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 23:05 PVG 07:05 LAX 16:05 JFK 19:05
    Do have faith in what you're doing.
    ubao 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