我有一个repo,我的主人有很多提交...我想从第一次提交(原始代码)创建一个新的分支,所以我这样做:
git checkout -b mybranch 4589D6a09505837ec03b
其中4589D6a09505837ec03b
是第一个提交ID ...一切似乎都好,现在我在mybranch
。但我查看代码,它与我的master
完全相同!我甚至从新的checkout分支运行我的服务器,它看起来与master
相同。也许这个id有问题..我怎么能让github从master那里得到第一个提交?
已编辑:我可以从远程repo的主分支执行此操作吗?只需将代码分支到我的本地仓库。我不想为它重新创建一个回购。
答案 0 :(得分:2)
您想要做的是:
git checkout 4589D6a09505837ec03b
git checkout -b mybranch
从man page on git checkout开始,当您将提交ID放在放置它的位置时,您正在做的是告诉git 从哪里开始存储库,而不是在哪里结束它,这是我认为你想要做的。 (如果我在那里做错了,请告诉我。)
编辑:这些命令与原始问题的行为相同。