在Git中签出正确的标签

时间:2013-11-06 16:57:50

标签: git

我有一个稳定的内核版本的git存储库 我的远程'起源'如下

origin  git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git (fetch)
origin  git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git (push)

现在根据kernelnewbies.org,我必须使用以下命令来获取特定内核版本的快照

git checkout -b stable tag

我做了这个

git checkout -b v2.6.34.12

但是当我使用

检查内核版本时
make kernelversion

我得到3.11.6的最新版本。

git命令是正确的还是我错过了什么?

2 个答案:

答案 0 :(得分:2)

你的问题是:

git checkout -b v2.6.34.12

创建一个名为v2.6.34.12的新分支,该分支位于您当前检出的任何内容上 - v2.6.34.12-b选项的参数,并将该分支命名为你想创造。

相反,你想要这个:

git checkout -b mybranch v2.6.34.12

创建一个新的分支(想象一下,mybranch),然后在v2.6.34.12标签处开始(但要小心,此时,因为你已经创建了一个分支,您可能首先删除的名称v2.6.34.12 git rev-parse可能会在找到标记之前找到该分支 - 您可以将上面的最后一个参数指定为refs/tags/v2.6.34.12以明确请求标记而不是同样命名的分支)。

答案 1 :(得分:1)

usage: git checkout -b|-B <new_branch> [<start point>]

只需添加<start point>

git checkout -b formake v2.6.34.12

你的

git checkout -b v2.6.34.12 

等于

git checkout -b v2.6.34.12 HEAD

它从master

创建一个名为v2.6.34.12的新分支
相关问题