can’t get git rev, you should add git to system path or just input test value, such as ‘testTinkerId’
微信团队的Android热修复框架Tinker的build.gradle里面有这样一行代码:
def gitSha() {
try {
String gitRev = 'git rev-parse --short HEAD'.execute().text.trim()
if (gitRev == null) {
throw new GradleException("can't get git rev, you should add git to system path or just input test value, such as 'testTinkerId'")
}
return gitRev
} catch (Exception e) {
throw new GradleException("can't get git rev, you should add git to system path or just input test value, such as 'testTinkerId'")
}
}
用于获取一个字符串,作为TINKER_ID。
但是直接用android引用tinker-sample-android项目,会报错:Error:Execution failed for
task ‘:app:tinkerProcessDebugManifest’. tinkerId is not set
解决方法
(1)安装git
(略)比较简单直接去官网下载:https://git-scm.com/downloads
(2)将项目与git建立关联
进入tinker-sample-android目录,输入 git init,然后就会看见这个
(3)studio配置git
可以点击右侧的test,显示出版本号表示路径没问题。
(4)给项目设置版本管理
这个时候再次同步Gradle,还是失败,不要放弃。
我们随便把项目中一个文件加入版本控制,并且Commit一下。
这个时候如果还是失败,报错can’t get git rev, you should add git to system path or just input test value, such as ‘testTinkerId’,这是因为没有配置git环境变量,百度一下配置git环境变量,然后重新打开一下android studio,就能通过了。
最后在\app\build\intermediates\tinker_intermediates\AndroidManifest.xml下就能看到