Android Studio建议在构建工作流程中使用gradle包装器。但是,如果您使用git进行版本控制,. jar文件会被忽略,并且据说不会签入,这是我得到的。但我的工作流程与普通人有点不同。我们也同时使用Team Foundation Server和git。使用自定义MSBuildTask调用gradle构建。这是我的. gitignore文件的样子:
# Built application files *.apk *.ap_ # Files for the Dalvik VM *.dex # Java class files *.class # Generated files bin/ gen/ # Gradle files .gradle/ build/ # Local configuration file (sdk path, etc) local.properties # Proguard folder generated by Eclipse proguard/ # Log Files *.log
它目前的工作方式是,首先我们将TFS和我们的git回购都拉到一个公共位置,然后我们将两者合并,将结果检查回TFS,并将结果推回到git回购。完成后,将执行自定义MSBuildTask,该任务基本上只调用“gradlew build”。然而,这失败了,因为gradle包装器。jar文件没有被推送到git,而是被忽略。关于如何实现这一点有什么想法吗?提前感谢!
正如Peter提到的,jar并没有因为你的。gitignore文件;我猜jar被忽略是因为. gitignore文件位于项目目录的父目录中。会是这样吗?
无论如何,如果是这种情况,您可以尝试在.gitignore文件中使用否定,如下所示:
!**/*.jar
通过这种方式,您可以覆盖其中一个父目录中. gitignore文件中的规则。