关于git命令“git rev-parse --short HEAD”在android studio中使用与配置的个人探究
来源:互联网 发布:java断点续传下载校验 编辑:程序博客网 时间:2024/06/02 01:10
本文地址:关于git命令“git rev-parse --short HEAD”在android studio中使用与配置的个人探究
写在前面
写的比较详细,本人对这方面了解还不够,权当做个记录了。
微信团队的Android热修复框架Tinker里面有这样一行代码:
def gitSha() { return 'git rev-parse --short HEAD'.execute().text.trim()}用于获取一个字符串,作为TINKER_ID。
项目直接运行也是跟好多人一样,报错
Error:Execution failed for task ':app:tinkerProcessDebugManifest'.> tinkerId is not set!!!
然后我在sample中,直接写死这个返回值,没有用他这段代码,
一个原因是,嫌麻烦,
还一个就是,不太懂这个代码的意思(对git命令行操作接触不多,害羞脸)。
刚才有博友问到想要用这段代码生成返回值怎么办?
然后我试着理了一下,现在把我了解的跟大家分享一下。
--------------------------------------------我是分享的分割线-----------------------------------
一、配置git环境变量
配置git环境变量不用细说,这是为了保证在任何目录,都可以运行git命令行。
配置完成后,在任何一个目录打开命令行,可以尝试输入git --version 如果显示了版本号,表示咱们环境配置成功了。
二、将项目与git建立关联
我以Tinker中的sample为例,
如果我们之前项目并没有与git建立关联的话,
进入sample所在目录,打开命令行,输入:
,然后我们进入这个sample的目录,
发现多了个.git文件夹,这就表示关联成功了。
(PS:好多人看不到是因为没有显示隐藏文件)
三、studio配置git
打开studio的setting,
配置git路径。
可以点击右侧的test,显示出版本号表示路径没问题。
然后点击Version Control,在Project的右侧VCS上选择Git,保存。
如果前面都没问题的话,
主界面的上方应该就会多出这几个图标。
这时候,我们同步一下Gradle,会发现还是报错。
提示tinkerId 没有设置。
嗯因为我们没有用git提交过代码。
我们随便把项目中一个文件加入版本控制,并且Commit一下。
这时候我们在 下方Version Control的console中可以看到
这里的这个字符串,就将是我们等下获取到的TINKER_ID。
这是我们再Gradle Sync一下,应该就不会报错了。
进入app/build/intermediates/manifests/full/debug目录(我选的是debug模式,你release的话就是release目录了)
打开清单文件,可以看到:
这个正是我们刚才Commit的时候,的那个字符串。
PS:每次提交这个字符串都不同,但对于它具体的含义,希望有知道的大神指教。
至此,这段git命令就可以正常的执行了。
- 关于git命令“git rev-parse --short HEAD”在android studio中使用与配置的个人探究
- git rev-parse命令
- git rev-parse 命令
- git 的 rev-parse 命令用法
- git学习------>git-rev-parse命令初识
- git rev-parse
- Git -> git rev-parse 笔记
- Git学习 - git rev-parse的一点说明
- 在ADT和Android Studio中配置和使用Git
- 如何在 android studio中使用git
- 在Android Studio中使用Git
- Android studio中git使用及git配置路径
- Android studio中git使用及git配置路径
- Android Studio中Git的安装配置以及使用
- 关于Android Studio 的 git的使用
- 在Android Studio中使用git的总结
- 关于studio中Git的初步使用
- Android Studio的Git与Github配置
- 编程练习:判断点是否在矩形内
- sass(ruby)
- android fragment 切换时隐藏软键盘
- iOS动画——弹窗动画(pop动画)
- clock、GetTickCount的计时 Win7: clock的精度是1ms,但GetTickCou
- 关于git命令“git rev-parse --short HEAD”在android studio中使用与配置的个人探究
- ML Pipeline —— spark官网译文
- Java内存管理原理及内存区域详解(转)
- 关于Gradle版本问题
- 动态代理模式的Java实现
- SAP方丈-SAP常见问题与解决办法(转)
- 游戏术语 DAU APA ACU PCU
- KVM-Qemu-Libvirt三者之间的关系
- 网站界面设计应遵循的几个原则(转载)