V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
idealhs
V2EX  ›  git

一个不同代码托管平台间 PR 工作流程相关的问题

  •  
  •   idealhs · 2022-01-11 14:44:30 +08:00 · 1089 次点击
    这是一个创建于 807 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因为一直没有用过 Github (搜代码不算),之前在工作中在使用 GitLab 和 Azure DevOps 的时候,都是以分支到分支去 merge 代码的,Gitlab 是提交一个 MR Merge Request ,Azure DevOps 是也叫 PR ,流程大概就是每个人创建自己的分支,然后提 PR 过 review 把分支上的改动朝 master 上合并。

    最近在看 github 的时候发现 github 上的 PR 好像和我之前接触的不太一样,如果我要参加一个开源项目,我需要先 fork 别人的仓库,而不是在仓库中创建新分支。PR 是仓库到仓库而不是分支到分支。我的理解正确吗?是所有的代码托管平台都差不多的合并逻辑还是只是 github 是这么干的,谢谢大家解答哈。

    6 条回复    2022-01-11 23:36:12 +08:00
    maichael
        1
    maichael  
       2022-01-11 14:49:15 +08:00
    理解有问题,Gitlab 也支持仓库到仓库,Github 也当然支持分支到分支。只是由于权限问题(开源协作模式决定,大多数贡献代码的人没有权限在主仓创建分支),所有从会有 fork 新仓库这种方式。
    ScepterZ
        2
    ScepterZ  
       2022-01-11 14:50:42 +08:00
    fork 方式是为了给别人的仓库做贡献,如果你是项目的一份子,也是直接在里边开分支的
    dayeye2006199
        3
    dayeye2006199  
       2022-01-11 14:51:22 +08:00
    也是分支到分支的。只不过是你 fork 出来的这个仓库的一个分支,到原仓库的分支;
    因为你没有推送原仓库分支的权利,所以只能这么弄了;这个一般是给开源库贡献代码的姿势。

    如果你们是自己组织内部用,那直接在原仓库里面开分支,推送原仓库,然后发起 PR 合并分支就可以了;没必要走这个模式。
    thevita
        4
    thevita  
       2022-01-11 14:52:00 +08:00
    我觉着,没啥差别啊, 都是 branch->branch (无非是 这俩 branch 是不是在一个 repo 里, 毕竟 git 是分布式的嘛)
    idealhs
        5
    idealhs  
    OP
       2022-01-11 15:34:55 +08:00
    感谢楼上各位彦祖们,现在我明白了,就是一个开源和工作流程之间的区别。
    unco020511
        6
    unco020511  
       2022-01-11 23:36:12 +08:00
    我之前和你有一样的疑问哈哈,楼上几乎都说清楚了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1128 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 22:57 · PVG 06:57 · LAX 15:57 · JFK 18:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.