V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
my1103
V2EX  ›  职场话题

xdm 都来看看这都啥奇葩操作

  •  
  •   my1103 · 2023-05-31 09:52:58 +08:00 · 8411 次点击
    这是一个创建于 541 天前的主题,其中的信息可能已经有所发展或是发生改变。

    xdm 都来看看,公司这奇葩操作: 目前开发的需求和正在测试的需求分支有冲突,由于测试的需求比较重要,所以分支一直能不能切到开发分支,导致正在开发的需求不能开发。 领导又不想延期,于是给的办法是:白天你们参与开发的回家休息,白天分支给测试用,晚上上晚班通宵开发,这样不就有分支了嘛。 哈哈哈哈,xdm ,mlgb

    第 1 条附言  ·  2023-05-31 16:50:05 +08:00
    或许是我没有说的明白,公司 3 个环境 test pre prod ,开发和测试都是在 test 环境,我们公司有 3 个市面上的 app ,app 登录也需要切换到对应的 3 个环境登录,分别是 test ,pre prod ;不是说你想弄几个环境就几个环境的。你随便弄个 a 环境有啥用。
    99 条回复    2023-06-01 10:22:53 +08:00
    JYii
        1
    JYii  
       2023-05-31 10:00:25 +08:00   ❤️ 1
    后面的操作先不说,为什么不能切换分支
    tianmalj0613
        2
    tianmalj0613  
       2023-05-31 10:02:28 +08:00
    @JYii 因为有冲突啊
    my1103
        3
    my1103  
    OP
       2023-05-31 10:03:30 +08:00
    @JYii 因为正在开发的需求后端代码对正在测试的需求代码进行了更改,后端不能将开发的代码合上去,不然会影响到正在测试的需求
    mitsuizzz
        4
    mitsuizzz  
       2023-05-31 10:04:06 +08:00
    测试不应该到测试环境测吗,开发环境做开发
    sscs
        5
    sscs  
       2023-05-31 10:04:13 +08:00
    只有一个环境?
    就算公司穷到这地步改个 namespace 不就分开了
    还是说仅有的一台服务器只能部署一套服务么
    my1103
        6
    my1103  
    OP
       2023-05-31 10:05:27 +08:00
    @mitsuizzz 就是在测试环境,是因为后端代码不能合上去,不然会影响正在测试的需求
    sscs
        7
    sscs  
       2023-05-31 10:05:49 +08:00
    @tianmalj0613 #2 没有一个开发有权限拉新分支?
    simonCN
        8
    simonCN  
       2023-05-31 10:07:11 +08:00   ❤️ 1
    说白了就是就是公司技术水平低下,多个环境不就解决了,dev, qa, uat, prod 分开
    christin
        9
    christin  
       2023-05-31 10:07:13 +08:00
    不是很理解,可以单独开一条分支给测试用,你们就正常开发就好了啊。
    luhongfei66
        10
    luhongfei66  
       2023-05-31 10:07:17 +08:00
    是 git 吗,咋感觉你们公司没有人会用啊,开发的分支不合测试分支有啥问题吗,咋会影响开发,你开发的代码是提交到开发的分支,又不是提交到测试分支
    hhjswf
        11
    hhjswf  
       2023-05-31 10:10:58 +08:00 via Android   ❤️ 18
    感觉一堆臭皮匠。。
    AreYou0k
        12
    AreYou0k  
       2023-05-31 10:12:33 +08:00
    让公司买两台服务器, 开发配两台电脑. 这样你们不就可以一边改测试一边开发了吗😁
    terrysnake
        13
    terrysnake  
       2023-05-31 10:13:26 +08:00
    感觉这领导搞反了啊,不一般都是测试加班测试,太晚的话第二天不用来。开发上班就可以有活干嘛?
    tianmalj0613
        14
    tianmalj0613  
       2023-05-31 10:15:47 +08:00
    @sscs 小公司没人梳理研发研发流程,会经常遇到这些问题。问就是有冲突,解决不了。。。
    @my1103 用 git 流程管理解决,要么做好 release 管理,测试都基于 release 测试。要么像楼上说的,分支和环境对应上
    my1103
        15
    my1103  
    OP
       2023-05-31 10:18:22 +08:00
    @christin 是开发和测试都是在测试环境,没有多余的环境
    yunyuyuan
        16
    yunyuyuan  
       2023-05-31 10:19:02 +08:00
    “后端不能将开发的代码合上去”,没搞懂这里为什么要合代码才能开发(和前端联调)呢,后端在本地起服务给前端就行了吧
    my1103
        17
    my1103  
    OP
       2023-05-31 10:20:07 +08:00
    @tianmalj0613 是开发和测试都在测试环境操作的,后端合了代码也是发的测试环境。所以会冲突。没有多余的环境。目前公司只有 test ,pre ,prod
    lawmil
        18
    lawmil  
       2023-05-31 10:22:23 +08:00
    没太看懂,如果是用 git 为啥会有这种合并问题,是并发测试?如果是就开多套测试环境,如果不是,git 天然支持多分支开发,只是后期合并的时候冲突比较头疼,但也不用开发人员倒班吧~
    zznote
        19
    zznote  
       2023-05-31 10:27:52 +08:00
    为啥要合并?不合并不能正常开发吗,还不能切分支,没搞懂
    ghost024
        20
    ghost024  
       2023-05-31 10:28:25 +08:00
    我看你在 17 楼不是说公司有 pre 环境吗?测试的需求去 pre 环境啊,这个需求已经开始测试了,说明开发阶段已经结束了,最多就是根据测试调整一下,你们新开发的在 test 上面接着搞不就行了?我还以为只有两个环境。。。
    my1103
        21
    my1103  
    OP
       2023-05-31 10:30:39 +08:00
    @ghost024 不行,pre 是上线的时候的,没问题才能发 prod 。日常只能用 test
    ghost024
        22
    ghost024  
       2023-05-31 10:30:43 +08:00
    @ghost024 如果只有两个环境,一个 test 服务器,一个生产服务器,那就没办法了,只能说傻逼了,或者你们这几天先开发,不测试,等测试测试结束,或者功能上线以后,你们这段时间开发的代码再上 test 服务器测试,但按道理一般都是三个环境的。。。。
    popvlovs
        23
    popvlovs  
       2023-05-31 10:34:21 +08:00
    什么意思,只有一个环境,白天测试用,晚上研发用?
    那不是很扯淡么,每次换班都要重装环境么?还是只有一个白天晚上会这样
    实话说这操作奇葩到不合理,感觉是不是遗漏了什么关键信息
    ghost024
        24
    ghost024  
       2023-05-31 10:34:38 +08:00
    @my1103 我知道啊,prod 是生产在跑的代码么,pre 是验证分支代码,你这个功能已经开始测试介入了,说明开发自测是 ok 的,那说明如果 ok 的话,如果测试没问题,下次上线是会上掉的,那就在 pre 验证啊,如果有问题,pre 分支开修复分支修复啊,这样也不会阻塞你们的 test 分支
    mxT52CRuqR6o5
        25
    mxT52CRuqR6o5  
       2023-05-31 10:34:55 +08:00 via Android
    你们是在用 svn 管理吗?
    ilovey482i
        26
    ilovey482i  
       2023-05-31 10:36:44 +08:00
    开发本机不能起服务吗?一定要用测试环境?真搞不懂你们
    RATIONALITY
        27
    RATIONALITY  
       2023-05-31 10:37:56 +08:00
    不是分支的问题。。是没有配置开发环境。
    如果开发阶段需要前后端联调,就后端拉 dev 分支,运行在自己电脑上。
    前端连这台机器的 ip ,问题就解决了
    ghost024
        28
    ghost024  
       2023-05-31 10:39:19 +08:00
    而且如果 test 分支就算被占住了,你从 test 再拉一个分支不就行了,你们新开发的代码最后合到新拉的分支,然后那个 test 的功能 ok 了,直接把这个分支合到 test 就可以了,这样也不会阻塞,git 可以灵活的来搞啊
    leokun
        29
    leokun  
       2023-05-31 10:39:38 +08:00
    我个人感觉是不是大家太摆了,「没有多余的环境」这个问题多好解决啊
    tianmalj0613
        30
    tianmalj0613  
       2023-05-31 10:40:28 +08:00
    你们部署一套环境特别复杂吗?
    fao931013
        31
    fao931013  
       2023-05-31 10:41:21 +08:00
    欲言又止.jpg
    inhzus
        32
    inhzus  
       2023-05-31 10:41:56 +08:00
    「没有多余的环境」这个问题多好解决啊 +1
    my1103
        33
    my1103  
    OP
       2023-05-31 10:42:22 +08:00
    @RATIONALITY 后端在其它分公司,不在一起
    aino
        34
    aino  
       2023-05-31 10:45:04 +08:00
    借楼问问各位大佬
    功能分支——>test——>main

    然后本来要上线的一个功能已经合 test 且已经测试完毕,且为修改主流程功能,这时候通知不上线,先写另外一个功能,这个时候想问 我新功能分支是从 main 拉取 没问题,新功能分支怎么合 test 呢
    hhjswf
        35
    hhjswf  
       2023-05-31 10:45:51 +08:00   ❤️ 1
    @mxT52CRuqR6o5 svn:有被冒犯到。。
    Seulgi
        36
    Seulgi  
       2023-05-31 10:54:13 +08:00
    有三套环境,test ,pre ,pro 。那为什么还会环境不够,pre 说白了就是你们的一个预发分支,你们现在没有预发的需求,也就是现在 pre 其实没用处,那临时顶替给测试使用,开发使用 test ,完全没问题,如果说你们 pre 预发会有正式流量进入,那临时关闭流量切割 pre 为独立环境就完事了,方法总归是有的,只能说你们公司没有一个人去想。
    JKeita
        37
    JKeita  
       2023-05-31 11:13:40 +08:00
    你们本地没环境的吗
    zengguibo
        38
    zengguibo  
       2023-05-31 11:19:59 +08:00
    多大的事啊,再开一个环境,叫开发环境不就可以了吗,一般几套环境就,
    dev(develop 分支,开发人员想怎么折腾就怎么折腾)
    qa(开发人员已经测试完成,可以提交测试人员的)
    pre(release 的分支,环境与正式一样的) ,
    prod(master 分支,正式环境)
    zengguibo
        39
    zengguibo  
       2023-05-31 11:22:54 +08:00
    @aino 我的理解是不上线的功能先回退,按 develop 分支来开发,只要严格按 git flow 的流程来,一点都不乱
    daimubai
        40
    daimubai  
       2023-05-31 11:29:20 +08:00
    那你们本地怎么调试的?还要放到服务器上调试?(你们一群做技术的解决不了问题,领导只能帮你们想办法咯
    aino
        41
    aino  
       2023-05-31 11:34:05 +08:00
    @zengguibo #39 意思是 test 回退是吧,然后我新功能分支到时候再和 test 去
    zengguibo
        42
    zengguibo  
       2023-05-31 11:44:14 +08:00
    @aino 是,功能不上线就回退,等要的时候再找出来,一直挂在那里很麻烦,会导致 develop 分支与 master 分支差异大
    zengguibo
        43
    zengguibo  
       2023-05-31 11:45:22 +08:00
    @daimubai 很正常,有些功能本地确实测试不了,比如支付功能
    aino
        44
    aino  
       2023-05-31 11:56:39 +08:00
    @zengguibo #42 ok,谢谢,本来都打算直接删除 test 重新往 main 拉一个 test 分支的,听了你的,只用回退就行了
    sadfQED2
        45
    sadfQED2  
       2023-05-31 12:12:33 +08:00 via Android   ❤️ 5
    听了楼主的描述,大为震撼,欲言又止.png
    daimubai
        46
    daimubai  
       2023-05-31 12:12:36 +08:00
    @zengguibo #43 但是连正常的开发都进行不了那就不正常了吧?
    darkengine
        47
    darkengine  
       2023-05-31 12:26:39 +08:00
    给自己戴上脚镣
    ganbuliao
        48
    ganbuliao  
       2023-05-31 12:27:44 +08:00
    申请要个 dev 环境呗
    456789
        49
    456789  
       2023-05-31 12:28:49 +08:00
    这个老板挺会招人的,不是一家人不进一家门
    musi
        50
    musi  
       2023-05-31 12:30:04 +08:00
    你们技术才是奇葩操作吧,你看看这么多回复是不是都在问你们技术的
    weijancc
        51
    weijancc  
       2023-05-31 12:37:11 +08:00
    开发自己在开一个分支合并代码但不部署不就行了, 你们这就是菜
    fkdtz
        52
    fkdtz  
       2023-05-31 12:48:26 +08:00
    一半人白天工作生活,另一半人晚上工作生活,折叠城市,格局打开 ❤️
    zengguibo
        53
    zengguibo  
       2023-05-31 12:55:03 +08:00   ❤️ 1
    挺多公司连基本的管理都没有,上线部署靠覆盖,需求管理靠微信,git 什么的不存在的
    sloknyyz
        54
    sloknyyz  
       2023-05-31 13:01:37 +08:00
    Linus 开发这么牛逼的软件给你们用,你们连文档都不愿意多看看。
    Promtheus
        55
    Promtheus  
       2023-05-31 13:36:56 +08:00
    挺好 白天睡觉 晚上摸鱼睡觉
    li24361
        56
    li24361  
       2023-05-31 13:48:07 +08:00
    太离谱了
    Finnn
        57
    Finnn  
       2023-05-31 13:50:18 +08:00
    所以测试环境就是你们开发的电脑环境而不能动是吧

    就算如此, 也可以再克隆个目录而开多个环境, 问题傻逼, 领导牛逼
    followNew
        58
    followNew  
       2023-05-31 13:50:49 +08:00
    你们这是工厂模式?
    机器不停,人二班倒。

    工厂是因为机器要花钱,你们这切个分支也要花钱吗?
    cyrivlclth
        59
    cyrivlclth  
       2023-05-31 14:12:05 +08:00 via iPhone
    对不起 本来不想笑的 但真的忍不住 一个公司能凑齐你们也是不容易 就没有一个人能解决环境不够的问题吗
    LXGMAX
        60
    LXGMAX  
       2023-05-31 14:21:12 +08:00
    这场面我还真没见过.jpg
    cgzwxx
        61
    cgzwxx  
       2023-05-31 14:40:58 +08:00
    真是笑死了 还以为是多大点事
    hokori
        62
    hokori  
       2023-05-31 14:43:17 +08:00
    版本管理出翔了吧,第一次听说有版本管理的项目会出现这种情况
    spicy777
        63
    spicy777  
       2023-05-31 14:48:41 +08:00
    今日首蚌
    itgoyo
        64
    itgoyo  
       2023-05-31 14:57:37 +08:00
    那个兄弟们,你们联调测试之类的直接能上测试环境?不都是先局域网联调吗,不是本地联调完没问题才提交的测试环境吗?而且提交测试环境之后,你们就不能直接电脑跑服务器联调了?这也没到 dev/uat/现网环境呀。俺还是没太懂啥意思,可能是我理解不对。
    fakepoet
        65
    fakepoet  
       2023-05-31 14:59:21 +08:00
    缓缓打出一个问号
    villivateur
        66
    villivateur  
       2023-05-31 15:00:50 +08:00
    你们的测试环境是有多复杂啊,我这边开发和测试环境,要一整套数控机床的环境,各种硬件设备、接线一大堆,就这样,我们也不会导致测试和开发冲突,设备就算再贵也要买两套。
    你们的环境不会比我们还复杂吧?
    IamUNICODE
        67
    IamUNICODE  
       2023-05-31 15:01:42 +08:00
    实在是穷的话,自己弄个笔记本内网弄个环境不就行了吗。。
    Nullnode
        68
    Nullnode  
       2023-05-31 15:04:19 +08:00
    测试服务和开发服务不分开?加夜班开发也是服,可以尝试你联后端的本地调试
    Nullnode
        69
    Nullnode  
       2023-05-31 15:05:14 +08:00
    @my1103 #33 内网穿透下?
    sockpuppet9527
        70
    sockpuppet9527  
       2023-05-31 15:24:03 +08:00
    两班倒的话用 u 盘拷,也能满足需求,用 git 纯属浪费喽。
    RealJacob
        71
    RealJacob  
       2023-05-31 15:44:33 +08:00
    弄他十个测试环境不就是了。。。
    aPaul
        72
    aPaul  
       2023-05-31 15:45:59 +08:00
    这是 21 世纪的互联网开发吗。。
    lilei2023
        73
    lilei2023  
       2023-05-31 15:51:40 +08:00
    又一次刷新的我世界观
    gold2022
        74
    gold2022  
       2023-05-31 16:07:13 +08:00
    测试功能和开发功能是完全冲突的吗
    alanyuan
        75
    alanyuan  
       2023-05-31 16:12:06 +08:00 via iPhone
    你们需要 chatGPT
    component
        76
    component  
       2023-05-31 16:17:08 +08:00
    看着跟环境没关系,而是项目太大各个模块迭代进度不一致需要拆分了,微前端框架了解一下?
    cangcang
        77
    cangcang  
       2023-05-31 16:19:13 +08:00
    说实话,完全不能理解,就算公司穷到就一台服务器 而且性能一点余裕都没有。你们开发不能用自己电脑起服务吗
    wanderingaround
        78
    wanderingaround  
       2023-05-31 16:39:11 +08:00 via Android
    就不能重启一个分支,之后再合并?实在不行,你们就不能先开发,之后他们测完了,再合并,这影响你们工作,咋就影响你们开发了呢,没搞懂
    iamqk
        79
    iamqk  
       2023-05-31 16:56:27 +08:00
    为什么不再开一个测试分支,或者开发分支,把测试和开发区分开呢?
    otakustay
        80
    otakustay  
       2023-05-31 17:02:06 +08:00
    说白了就是环境太少了,基础设施太烂
    zhenrong
        81
    zhenrong  
       2023-05-31 17:12:26 +08:00
    算了,我直接告诉你答案吧。

    首先,肯定是可以切换分支的,除非你们代码都不用 git 管理那你们就拷贝目录吧。
    其次,只要你们不是穷到只有一台测试服务器且服务器资源都被榨干了,多启几个服务不是什么难事,无非是不同端口,测试版 APP 可以改造下手动配置服务端地址,这样同一个 APP 版本包,随时测不同服务端版本。
    当然如果不是穷到只有一台服务器,完全可以另外部署在其他机器或者本地都可以,这样不会出现同 IP 不同端口的情况,APP 通过域名连接,无需任何改动,手机端配个代理,通过 switchhosts 切换服务指向。

    下次这种事情可以花点钱,招个稍微醒目的人,搞下 CICD 环境吧。
    jamosLi
        82
    jamosLi  
       2023-05-31 17:13:54 +08:00
    @ghost024 感觉楼主有点轴。再不济内网 ip 搞一下也都行。自己给自己搞奇葩的事。
    MRG0
        83
    MRG0  
       2023-05-31 17:17:45 +08:00
    这领导是不是有点想当然
    sanqian
        84
    sanqian  
       2023-05-31 17:40:41 +08:00
    为什么不能本地开发?然后把一些返回数据以 txt 等任意形式给 app 开发人员?等待测试差不多了直接进行合并 app 换个请求域名不就好了?
    Sfilata
        85
    Sfilata  
       2023-05-31 17:57:04 +08:00
    首先,为什么不用本地开发?之前我联调的时候都是直接连同事的机子进行的。退一步说,实在不行就做好 mock 呗,你们是分离的,又不是离了前端 /后端完全就干不了活了。
    hekunhotmail
        86
    hekunhotmail  
       2023-05-31 17:59:13 +08:00
    菜的抠脚,环境不够就在部署个环境,有什么好讨论的
    egqpwU3F2beQ8V77
        87
    egqpwU3F2beQ8V77  
       2023-05-31 18:11:27 +08:00
    代码分支操作下不就好了么,不太理解
    documentzhangx66
        88
    documentzhangx66  
       2023-05-31 18:25:24 +08:00
    楼上们可能不知道,很多小公司还在用 SVN 。
    akira
        89
    akira  
       2023-05-31 20:06:09 +08:00
    没看明白,分支和环境有啥关系,一个是代码仓库的事情,一个是 服务器运行环境
    SunsetShimmer
        90
    SunsetShimmer  
       2023-05-31 20:38:11 +08:00
    “我们公司有 3 个市面上的 app ”...
    我一般只在开源项目上遇到过这种情况,canary beta release 。
    prod 之所以叫 Production (生产)是因为只有它是面向用户(生产环境)的...
    fkdtz
        91
    fkdtz  
       2023-05-31 20:47:03 +08:00
    @SunsetShimmer 你想说什么?
    SunsetShimmer
        92
    SunsetShimmer  
       2023-05-31 20:57:05 +08:00
    @fkdtz #91 目前 PO 主的描述情况有点奇怪,test pre prod 都面向用户而且还不能分支。可能减少一些奇怪的设计可以有所帮助?
    fkdtz
        93
    fkdtz  
       2023-05-31 21:31:32 +08:00
    @SunsetShimmer 人说的是每个 App 都分别有且只有三套环境的意思,分别是测试、预发布、线上,你在想什么?
    EminemW
        94
    EminemW  
       2023-05-31 21:37:10 +08:00
    就算再穷,你也能在本地找台电脑搭环境啊。。
    SunsetShimmer
        95
    SunsetShimmer  
       2023-05-31 22:38:59 +08:00
    @fkdtz #93 也许是我理解有问题...
    huzhizhao
        96
    huzhizhao  
       2023-06-01 01:08:20 +08:00 via iPhone
    欲言又止.png
    yule111222
        97
    yule111222  
       2023-06-01 09:25:28 +08:00
    太 LOW ,无论是技术还是管理,算了劳动密集型懒得多讲
    limaofeng
        98
    limaofeng  
       2023-06-01 09:55:34 +08:00
    "或许是我没有说的明白,公司 3 个环境 test pre prod ,开发和测试都是在 test 环境" 问题不是很明显吗? 缺个 dev 环境。弄个环境很难吗?那花钱解决的问题都不是大问题。但又不想花钱就是大问题了
    fnd
        99
    fnd  
       2023-06-01 10:22:53 +08:00
    新增一个 dev 环境
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2760 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 11:46 · PVG 19:46 · LAX 03:46 · JFK 06:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.