Git 我是否需要合并裸回购中的分支机构?

Git 我是否需要合并裸回购中的分支机构?,git,git-merge,git-bare,Git,Git Merge,Git Bare,在我的设置中,我有三个回购协议: 远程服务器上的裸repo(/op/git/proj.git) 远程服务器上的非裸repo(/var/www/proj/.git) 本地计算机上的非裸回购(/var/www/proj/.git) 裸回购是本地和远程普通回购的起源 每当我在本地进行提交时,我都会在本地上推送到裸回购,然后在普通远程回购上推送并在远程回购上获得更改 现在,我想merge将A分支到master我应该使用哪种方法?(假设master是两个回购协议的当前分支机构) 方法1 1. 本地$git

在我的设置中,我有三个回购协议:

  • 远程服务器上的裸repo(
    /op/git/proj.git
  • 远程服务器上的非裸repo(
    /var/www/proj/.git
  • 本地计算机上的非裸回购(
    /var/www/proj/.git
  • 裸回购是本地和远程普通回购的起源

    每当我在本地进行提交时,我都会在本地
    上推送
    到裸回购,然后在普通远程回购上推送
    并在远程回购上获得更改

    现在,我想
    merge
    A
    分支到
    master
    我应该使用哪种方法?(假设
    master
    是两个回购协议的当前分支机构)

    方法1
    1. <代码>本地$git合并A

    2. <代码>本地$git推送原始主机

    3. <代码>远程$git拉取原始主机

    方法2
    1. <代码>本地$git合并A
    2. <代码>远程$git合并A

    我不确定第二种方法是否是我所需要做的全部,换句话说,因为你不能在裸回购中做
    结帐
    合并
    ,你需要在
    合并
    后对裸回购做些什么吗?

    使用方法1

    方法2只有在git merge A在本地和远程上都是快进的情况下才有效。如果任何
    git merge A
    操作导致合并提交(不是快进),则主分支将发生分歧

    通常,在多个位置合并同一分支在实践中很少有用

    合并后,你需要对裸回购做些什么吗

    就这样吧。

    这是正确的答案(并且是向上投票的),我只想添加一条注释,说明整个合并过程同时使用索引和工作树来存储所有中间结果。虽然裸存储库确实有索引,“裸存储库”的定义是“没有工作树”,因此不能在裸存储库中合并的原因是它缺少合并过程的关键元素。