我只需要Chrome的指定版本的代码,如r69297,它是Chrome的最新开发版本。 我使用git,所以我按照这里的说明: http://code.google.com/p/chromium/wiki/UsingGit 但是,我同步所有的代码,并检查提交日志后,我找不到此修订! 然后我想到了标签,并在这里搜索。 How to use git to checkout a specified version of Webkit? 在这里我发现了,但在按照所有步骤,并等待相当长的时间后,我仍然没有得到任何东西。 铬的git仓库是否保留标签信息?我怎么能得到他们? THX如何从git获取指定标签版本的Chromium代码?
6
A
回答
12
当有人问,铬使用SVN。现在,git是主要的VC系统,所以我将使用git标签/散列而不是r ####修订版。
在这个答案中,我假设您已经设置了构建Chromium的前提条件(包括初始结账)。如果你没有那个,请继续阅读教程http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html。您可以跳过步骤gclient sync
,因为您将在下面的步骤中替换依赖项。
场景:我想在最新的稳定Chromium版本上应用补丁。要了解最新的稳定版本,请访问https://omahaproxy.appspot.com/。根据该页面,最新版本是38.0.2125.104。如果您想查看上一个/下一个版本,请访问http://blink.lc/chromium/refs/了解标签概述。这个标签列表包括未发布的版本,例如, 38.0.2125.106(当基于第三个标识符的基线上应用了新修补程序时,最后的内部版本号会增加)。
# Inside chromium/src/
git fetch origin 38.0.2125.106
# Create a new branch "my_stable_branch" that is based on the just-fetched HEAD.
git checkout -b my_stable_branch FETCH_HEAD
# ... apply the patch ...
# (e.g. by editing the files)
# (e.g. by using git cherry-pick [commit id])
# (e.g. by using git checkout [commit id] [file path])
# Commit changes (assuming that you want to keep track of your changes)
git commit -va
# Now synchronize the dependencies to the current branch
gclient sync --with_branch_heads # --jobs 16 if you wish to use parallelism
# Now compile the release build. The output will be stored in src/out/Release.
ninja -C out/Release chrome chrome_sandbox
1
分行
如果你不能找到一个特定的承诺,我会检查它是否比“大师”以外的分支。当你第一次克隆版本库时,你只能得到“主”分支。您可以运行下面的检出一个分支可在远程铬库:
git branch new-local-branch origin/some-remote-branch
git checkout new-local-branch
显然使用了正确的名称为远程分支并命名当地分行的东西逻辑。
标签
当你克隆一个Git回购,你应该在默认情况下得到的所有的标签。您可以通过运行git tag
或git tag -l
来获取所有已定义标签的列表。
如果你没有看到任何标记,可以明确地获取他们:
git fetch --tags
一旦你有你想要的标签,检查它开始使用该版本的代码库:
git checkout <name of tag>
相关问题
- 1. 如何从git获取特定版本的代码?
- 2. 如何使用go获取包的指定版本(标签)?
- 3. 如何从代码获取Flutter版本?
- 4. 如何从标签(包括子模块)获取代码的确切版本
- 5. Github Branch,标记:如何获取特定版本的代码?
- 6. Git - 获取日志中使用的代码/版本标识符
- 7. 在Visual Studio 2013中从TFS/Git获取标签版本
- 8. Git获取特定版本
- 9. 从RTC获取GIT版本
- 10. 获取当前运行beanstalk版本标签的Java代码?
- 11. 指定代码版本
- 12. AssemblyInfo的Git标签版本
- 13. Git:我如何找到指向特定修订版的标签?
- 14. Git:如何从.gitattributes ident获取特定版本的文件?
- 15. 如何从SVN签出特定版本的代码?
- 16. git版本相对于特定标签
- 17. 从svn获取代码版本
- 18. Git标签发布版本?
- 19. 如何用git smart commit指定版本?
- 20. 如何获取git中的最新版本标签和与头部的距离
- 21. 如何获取特定版本的平台包源代码?
- 22. git:我如何获得我的代码的最新版本?
- 23. 如何从StarTeam(stcmd.exe)获取带标签的代码?
- 24. 获取最新的稳定版本git
- 25. 如何从sonarqube中使用webservice api获取特定版本的指标
- 26. 如何从JIRA REST API获取指定的项目和指定版本
- 27. 如何获取Chromium for Android的源代码
- 28. git - 更改代码版本?
- 29. 获取签出修订版的git标签?
- 30. 如何从客户端获取代码.jar版本
你是什么意思,“我还是什么都没有”?你能展示运行这些命令的结果吗? – 2010-12-19 10:53:14
@Jean Hominal:没有输出。在git树中不存在版本69297,只有r69298。 – ayanamist 2010-12-19 14:47:35
尝试使用gitk查看Git存储库的历史记录 - 您可以通过其散列引用精确提交 – 2010-12-19 15:40:34