我需要在裸仓库中合并一个分支吗?
Do I need to merge a branch in a bare repo?
在我的设置中,我有三个存储库:
- 远程服务器上的裸仓库 (
/op/git/proj.git
)
- 远程服务器上的非裸仓库 (
/var/www/proj/.git
)
- 本地机器上的非裸仓库 (
/var/www/proj/.git
)
裸仓库是本地和远程普通仓库的来源。
每当我在本地提交时,我都会在本地 push
到裸仓库,然后在普通远程仓库上 pull
然后我在远程上进行更改。
现在,我想 merge
分支 A
到 master
我应该使用哪种方法? (假设 master
是两个回购协议的当前分支)
方法一
1. local$ git merge A
2. local$ git push origin master
3. remote$ git pull origin master
方法二
1. local$ git merge A
2.remote$ git merge A
我不确定第二种方法是否是我需要做的全部,换句话说,因为你不能在一个裸仓库中做像 checkout
和 merge
这样的事情,你是不是在 merge
?
之后需要对裸仓库做任何事情
使用方法一。
方法 2 只有在 git merge A
对本地和远程都是快进的情况下才有效。如果任何 git merge A
操作导致合并提交(不是快进),主分支将发生分歧。
一般来说,在多个位置合并同一个分支在实践中很少有用。
do you need to do anything to the bare repo after a merge?
按一下就行了
在我的设置中,我有三个存储库:
- 远程服务器上的裸仓库 (
/op/git/proj.git
) - 远程服务器上的非裸仓库 (
/var/www/proj/.git
) - 本地机器上的非裸仓库 (
/var/www/proj/.git
)
裸仓库是本地和远程普通仓库的来源。
每当我在本地提交时,我都会在本地 push
到裸仓库,然后在普通远程仓库上 pull
然后我在远程上进行更改。
现在,我想 merge
分支 A
到 master
我应该使用哪种方法? (假设 master
是两个回购协议的当前分支)
方法一
1. local$ git merge A
2. local$ git push origin master
3. remote$ git pull origin master
方法二
1. local$ git merge A
2.remote$ git merge A
我不确定第二种方法是否是我需要做的全部,换句话说,因为你不能在一个裸仓库中做像 checkout
和 merge
这样的事情,你是不是在 merge
?
使用方法一。
方法 2 只有在 git merge A
对本地和远程都是快进的情况下才有效。如果任何 git merge A
操作导致合并提交(不是快进),主分支将发生分歧。
一般来说,在多个位置合并同一个分支在实践中很少有用。
do you need to do anything to the bare repo after a merge?
按一下就行了