我将旧的git提交签出为分支,其中包含:
git checkout -b b48cdaa
然后我打开vim(实际上是Macvim),我希望看到旧提交中的文件,但所有文件都是当前(主分支)rev。这是为什么?我如何看待vim中的旧版?
提前致谢。
答案 0 :(得分:3)
git checkout -b b48cdaa
在您的情况下创建一个名为b48cdaa的新分支,引用当前的HEAD。
您可能想要做的是
git checkout -b branch_name b48cdaa
答案 1 :(得分:1)
你没有做你认为自己在做的事情。 git checkout -b b48cdaa
创建一个名为“b48cdaa”的新分支。
如果删除-b
,它应该使用指定的sha1签出提交(并让你处于“分离头”状态)。
git checkout --help
了解更多信息。
(请注意,这与vim无关。)
答案 2 :(得分:0)
这是男人,似乎-b标志不符合你的期望:
git checkout [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
-b
Create a new branch named <new_branch> and start it at <start_point>; see git-branch(1)
for details.
您刚刚创建了一个名为b48cdaa的新分支,其中包含新文件。
答案 3 :(得分:0)
根据Git文档(对于checkout命令):
-b 创建一个名为的新分支,然后启动它;有关详细信息,请参阅git-branch(1)。
只需录制git checkout b48cdaa
但要小心
执行此操作时,将HEAD更改为提交b48cdaa。我的建议是在另一个分支中粘贴此命令。所以:
git checkout -b test_branch
git checkout b48cdaa
当你准备回到原来的头上时:
git checkout master
(如果你想删除test_branch:
git branch -d test_branch
)