由于历史原因,我们在不同的git存储库中有不同版本的源代码。因此,当项目A持有源项目B的版本X时,项目B保存源的版本Y.
你们知道如何将Project B导入项目A的一个分支吗?
由于
答案 0 :(得分:24)
我不确定,你的意思是“git项目”。在git中,源代码的状态由提交(a.k.a。修订版)描述。它们存储在存储库中,但独立于存储库,可以在存储库之间自由复制。实际上,要处理源代码,git始终将提交复制到位于工作副本的.git
目录中的本地存储库。分支只是指向提交的名称。
因此,如果您在一个存储库中有一些分支,而另一个存储库中有其他分支,则可以:
将两者都拉入本地工作存储库:
git remote add B git://url.to/project.B.git
git fetch B
将您的工作基于B
的分支机构git checkout -b newname remotes/B/branchname
将您从一个中央存储库获取的分支推送到另一个:
git push origin remotes/B/branchname:branchname
或其他方式
git push B remotes/origin/master:othername
您可以在大多数时间省略remotes/
前缀。
答案 1 :(得分:18)
Git很简单。您必须将项目B添加为远程,然后获取:
git remote add projectB git://url.to/projectB.git
git fetch projectB
答案 2 :(得分:1)
git clone {git hub Project A URL}
git remote add projectBrepo {git hub project B URL}
git fetch projectBrepo
git branch -v -a
git checkout -b master_old remotes / projectBrepo / master
git push origin master_old
git checkout -b branch_name1 remotes / projectBrepo / branch_name1
git push origin branch_name1