2012-09-24 32 views
1

我已经从Git存储库下载了一个开源代码。现在我想恢复到以前的版本。我怎样才能做到这一点?有这样的命令:“混帐复归,但我不知道一个版本的哈希,说的代码264版本如何获得以前版本的sha散列,git

问候

+0

git中没有“版本264”。你从哪里得到这个号码? – Jon

+0

可能来自svn的思维模式。 –

+0

是的,svn心态。如何在git中回到以前的版本? –

回答

1
git rev-list --tags --max-count=2 

还会列出最后两个标签SHA1。第二个是你需要一个git checkout来工作(并将回购的内容恢复到之前的标签)

一旦你有了这个SHA1,git describe --tags xxx就会将所述SHA1转换成标签标签。

+0

这几乎可以解答我的问题,但有一点仍不清楚。我知道 –

+0

@aqavi_paracha不是进入前一个标记不同于前一个提交:一个标记引用一个提交,而前一个标记可以引用一个... 50提交回来! – VonC

+0

谢谢!得到它了 –

1

可以使用gitk与历史一起探索库和散列的版本,或提交信息的一个简单的输出,并提交哈希使用git log

2

cd到git仓库。键入git tag,看看你是否正在寻找显示出来的版本。如果那么你很幸运,那么你可以做这样的事情(我假设你正在寻找的版本显示为v1.2.3):

git checkout v1.2.3 
autoreconf # with git repos, this is often necessary before the next step 
./configure 
make 
sudo make install 

如果版本不与git tag露面,不过,那么你需要做的是这样git log --oneline | more代替,并查找相关的散列ID的方式。如果这给你的信息太少,只需做git log | more