• 请不要在回答技术问题时复制粘贴 AI 生成的内容
spikedingo
V2EX  ›  程序员

git 或者其他版本管理能否实现这样的功能?内详

  •  
  •   spikedingo · Sep 30, 2019 · 2785 views
    This topic created in 2421 days ago, the information mentioned may be changed or developed.

    我有一套代码,经常会改几个名字或者参数应用到一个新的小程序上去,但是不同小程序纯在不同程度的后续迭代与修复,这样到最后的结果就是要将所有代码都同步为最新版本是十分困难的事

    有没有办法可以以一套代码为基础,标注出不同小程序独特的部分,每次新增只用改动独特部分就可以了

    12 replies    2019-10-02 23:00:35 +08:00
    jmc891205
        1
    jmc891205  
       Sep 30, 2019 via iPhone
    把需要改动的部分抽出来变成配置文件
    dengshen
        2
    dengshen  
       Sep 30, 2019 via iPhone
    分支
    sowevo
        3
    sowevo  
       Sep 30, 2019
    配置文件
    Rwing
        4
    Rwing  
       Sep 30, 2019
    难道不是做一个公共类库吗?
    VDimos
        5
    VDimos  
       Sep 30, 2019 via Android
    这不就分支吗
    dorentus
        6
    dorentus  
       Sep 30, 2019
    公共的部分抽出来。
    能做成配置的做成配置。
    不能做成配置的做成插件,拆分成独立的工程。
    该做好版本控制的都做好版本控制。
    做一个打包 /发布系统,可以根据不同的配置、插件随时打包出想要的软件包。

    你看,其实这些跟 VCS 其实没啥关系……
    RubyJack
        7
    RubyJack  
       Sep 30, 2019   ❤️ 1
    master 堆特性, 分出去分支做不同配置, 然后分支不断 merge master
    sdushn
        8
    sdushn  
       Sep 30, 2019
    搜索关键词 分支,merge,cherry pick 感觉应该可以实现你的要求,而且不需要抽代码,直接源代码基础上改就行
    yinft
        9
    yinft  
       Sep 30, 2019
    创建新分支改完 merge 就是了。。。
    spikedingo
        10
    spikedingo  
    OP
       Sep 30, 2019
    @RubyJack 感觉这个方案比较不错,简单明了~
    msg7086
        11
    msg7086  
       Oct 1, 2019 via Android
    分支不断 rebase 就行了。这和我们做软件 mod 版很像。
    Chemist
        12
    Chemist  
       Oct 2, 2019
    你这得用 fork。因为各个新特性已经独立出来,每一个单独出来的改动都会有针对性的后续维护,所以不能再合并到当初的那个 master 了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2950 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 11:28 · PVG 19:28 · LAX 04:28 · JFK 07:28
    ♥ Do have faith in what you're doing.