所以我有这个场景。我有2个项目,P1和P2。还要考虑这些项目有分支机构:P1B1和P2B1(项目和分支机构)。我想把我的本地更改从P1B1直接推送到P2B1(否则创建一个新分支并推送到P2B2也没关系。如果有一个简单的方法,请告诉我。
答案 0 :(得分:2)
在下文中,我假设您所称的"项目"是相同代码库的副本,这两个代码库都受版本控制,并且可能在其自己的分支上进行不同的更改和工作。 Git称这些"存储库为#34;。您可以通过创建远程数据库将存储库相互连接。
如果P1和P2是不同服务器上的存储库,并且您自己的计算机上有本地存储库,则可以为它们创建远程存储库:
$ git remote add p1 <URL to P1>
$ git remote add p2 <URL to P2>
现在,您可以使用大多数git命令与任一存储库进行交互。例如,您可以从两个repos中获取所有分支:
$ git fetch p1
$ git fetch p2
您还可以将分支b1
上的当前工作推送到两者:
$ git checkout b1
$ git push p1 b1
$ git push p2 b1
有关详细信息,请参阅Working with Remotes中的Pro Git。
答案 1 :(得分:1)
根据git push
(https://git-scm.com/docs/git-push)上的git文档,您可以为推送指定存储库和分支
所以git push <R2 url> <branch name>
(例如git push ssh://git@host.xz/path/to/P2.git/ B1
来自文档:
存储库:作为推送操作目标的“远程”存储库。此参数可以是网址(请参阅下面的GIT URLS部分)或遥控器的名称(请参阅下面的REMOTES部分)。