![](/img/trans.png)
[英]Checkout Git project in Android Studio causes “project does not use Gradle”
[英]git - checkout remote git code into Android Studio imported project with Gradle build
我有一些我导入Android Studio的代码。
它现在有一个Gradle构建(以前没有)。 我现在需要做一个git pull
。 但是,鉴于目录结构略有变化,我不知道如何继续这样做。
app/src/main
下的Android Studio目录结构与原始类似,例如:
Android Studio
[main]$ ls
AndroidManifest.xml assets java res
[main]$ ls java/
LICENSE.txt README.md com
原本的
$ ls
AndroidManifest.xml README.md res
LICENSE.txt assets src
$ ls src/
com
在com
它非常相似,只是反向域路径略有不同(例如com/original
和com/new
)。 也就是说,似乎唯一重要的文件是AndroidManifest.xml
,它位于不同的位置。 但是,如果我执行git pull
它会将AndroidManifest.xml
放在不同的位置,并在com/new
之上查看com/original
。
有什么建议我如何处理这个?
您需要首先重新组织文件以匹配目标(即当前的Gradle结构)
git mv
,然后提交。 添加您的最新版本:
cd /path/to/local/clone git --work-tree=/path/to/gradle/project add . git commit -m "Import local dev" git push
(这将证明您可能在本地完成的任何差异)
然后你可以回到你的Android-gradle项目,并做一个git pull
。
如果情况是这是一个旧的Eclipse代码库,您正在迁移到Android Studio,并且您仍将继续使用相同的存储库继续前进,我建议在Android工作室中“手动”设置项目。 换句话说,不要使用将文件(源,资源,AndroidManifest等)移动到默认位置的自动导入。
通过定义gradle构建脚本“sourceSets”定义中的位置,将所有内容保存在原始位置。 例如:
android {
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
...
}
这可能是一个更简单的选择。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.