我正在尝试使用git hub项目源代码:
https://github.com/esheri3/OWASP-CSRFGuard
然而,我使用的罐子看起来像这样:
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.6.0_22-b04-307-10M3261 (Apple Inc.)
Project-Lead: Eric Sheridan (eric.sheridan@owasp.org)
Version: 3.0.0.503
我从网站上获得的最新jar的清单看起来像这样:
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.3
Created-By: 1.6.0_16-b01 (Sun Microsystems Inc.)
Project-Lead: Eric Sheridan (eric@infraredsecurity.com)
Version: 3.0.0.591
我想知道如何检索创建jar的整个代码库,其清单编号为第一个:3.0.0.503 不是最新的源代码,而是过去的版本;这样我就可以根据自己的需要在我的系统上构建和修改。
我认为颠覆会容易得多。 请注意,我已经在我的系统上克隆了git项目。 系统信息: Windows 7,64位 msysgit 1.7.10 已安装git扩展
任何指针都将受到赞赏。
答案 0 :(得分:2)
该项目选择不使用git标记版本。特定“版本”的唯一标志是更新名为Owasp.CsrfGuard / build.number的文件
所以理论上你需要阅读这个文件的历史记录(例如使用git log)来查看该文件中的内部版本号何时被设置为503,然后让git检查整个树的特定修订版。
这取决于项目所有者如何管理版本号,他们可能在颠覆中使事情变得困难。在这个具体项目的情况下,似乎没有押韵或理由。 github历史从499直接跳到504.所以我猜可能构建503根本就不存在,除了在一些开发人员的本地硬盘上,这意味着它们实际上根本没有进行正式的版本控制 - 只是一个特殊的代码放到github。
答案 1 :(得分:1)
不幸的是我无法找到版本503,但我找到了504.祝你好运!
如果您运行以下命令,您应该能够获得代码的版本504。
git checkout 04b240c1874c2176cab5fbc662a9676b085d7f1e
来源:使用github blame查看版本何时更改。 Blame
答案 2 :(得分:1)
查找创建该文件的提交。在Github中,这很容易,因为每个文件都显示了最新的提交更改它。您可以单击该提交并获取SHA1。
然后,您可以使用该SHA1签出该特定提交的代码:
$ git checkout SHA1