19

我正在尝试使用git subtree add. 特别是,我想添加分支stable(不是master分支)。我试过了:

git subtree add -P cow https://github.com/geoffryan/cow.git stable

但这返回了错误

'stable' does not refer to a commit.

我也试过:

git subtree add -P cow https://github.com/geoffryan/cow.git cow/stable
'cow/stable' does not refer to a commit.

和:

git subtree add -P cow https://github.com/geoffryan/cow.git ca26d248a12c21264e32a2c212381cafb578c9fb
'ca26d248a12c21264e32a2c212381cafb578c9fb' does not refer to a commit.

哈希是stable分支中最新提交的哈希。我在网上看到的使用示例都master用于提交,是否可以subtree add在非master分支上使用?

4

2 回答 2

28

这似乎有效

$ git remote add cow https://github.com/geoffryan/cow.git
$ git fetch cow
$ git subtree add -P cow cow/stable
Added dir 'cow'

我不明白如何直接将命令与存储库部分一起使用。

于 2013-05-30T07:09:55.307 回答
0

我遇到了类似的问题。但是,gipi 的解决方案对我不起作用。奇怪的是,当我添加主分支时一切都很好,但是当我想添加其他分支时,它返回

fatal: Couldn't find remote ref xxx/yyy
Unexpected end of command stream

所以我尝试了另一种方法:

mkdir tmp
cd tmp
git init
git clone url_for_xxx.git yyy

从那个subtree add临时代表的主分支:

git subtree add -P yyy /path/to/tmp/ master 
于 2014-04-22T08:42:03.900 回答