如何分叉和Git回购我的回购

时间:2013-09-14 22:23:25

标签: git repository fork

我今天开始使用Git并喜欢它。

我有这个疑问 - 任何人都可以帮助我

例如https://github.com/octocat/Spoon-Knife的回购可以通过在页面上按fork来分叉。然后出现在我的github中 - https://github.com/usrname/Spoon-Knife.git

我有一个像https://github.com/usrname/test.git

这样的测试git

我希望Spoon-Knife出现在'test'回购中,如https://github.com/usrname/test/Spoon-Knife

如何做到这一点 - 请告诉我。

1 个答案:

答案 0 :(得分:1)

你可以,但是你的https://github.com/usrname/test.git不会是一个分叉 只是一个普通的克隆回购,与原始回购https://github.com/octocat/Spoon-Knife没有任何特殊关系。

  • git clone your fork
  • 为您使用该克隆获取的任何远程分支创建本地分支:请参阅“Track all remote git branches as local branches”中的详细信息
  • test.git作为远程添加到您的本地克隆,名为“test
  • 将所有内容推回test.git

那将是:

git clone https://github.com/usrname/Spoon-Knife.git
cd Spoon-Knife
git fetch --tags
remote=origin ; for brname in `git branch -r | grep $remote | grep -v master | grep -v HEAD | awk '{gsub(/[^\/]+\//,"",$1); print $1}'`; do git branch --set-upstream-to $brname  $remote/$brname ; done
git remote add test https://github.com/usrname/test.git
git config push.default matching
git push --all
git push --tags
git config push.default simple

有关推送政策(config push.default部分),请参阅“What is the result of git push origin?”。