Android Studio:使用Mac(OSX)和Windows为同一项目更改SDK位置

kra*_*vil 3 windows git macos android android-studio

我正在开发一个Android Studio项目,我的团队成员使用Windows并使用OSX.

问题是,当我从git中提取新代码然后打开项目时,我会根据Mac的SDK位置进行各种更改:

首先打开项目时的通知: 在此输入图像描述

git diff 记录一系列与此类似的更改:

在此输入图像描述

我们如何配置Android Studio项目以便不必进行这些自动代码更改,或者可能有一种方法可以最小化更改的文件数量?

更新:

我更新了.gitignore并将其推送到远程仓库.

当我的团队更新了更多代码并将其拉出来时,我仍然遇到了同样的问题.

这是我的一个片段 git status拉后(我用"..."来表示该文件夹中的多个文件):

modified:   .idea/gradle.xml
modified:   .idea/misc.xml
modified:   .idea/modules.xml
modified:   .idea/vcs.xml
modified:   app/app.iml
modified:   app/build/intermediates/incremental/mergeAssets/androidTest/debug/merger.xml
…
    modified:   app/build/intermediates/incremental/mergeResources/debug/merger.xml
    modified:   app/build/intermediates/res/debug/anim/abc_fade_in.xml
...
    modified:   app/build/intermediates/res/debug/anim/abc_slide_out_top.xml
    modified:   app/build/intermediates/res/debug/color-v11/abc_background_cache_hint_selector_material_dark.xml
    modified:   app/build/intermediates/res/debug/color-v11/abc_background_cache_hint_selector_material_light.xml
    modified:   app/build/intermediates/res/debug/color/abc_background_cache_hint_selector_material_dark.xml
...
    modified:   app/build/intermediates/res/debug/color/wallet_secondary_text_holo_dark.xml
    modified:   app/build/intermediates/res/debug/drawable/abc_btn_borderless_material.xml
...
    modified:   app/build/intermediates/res/debug/drawable/timeline_button_hover.xml
    modified:   app/build/intermediates/res/debug/layout/abc_action_bar_title_item.xml
...
    modified:   app/build/intermediates/res/debug/layout/support_simple_spinner_dropdown_item.xml
    modified:   app/build/intermediates/res/debug/menu/menu_all_locations.xml
    modified:   app/build/intermediates/res/debug/menu/menu_main.xml
    modified:   app/build/intermediates/res/debug/values-af/values-af.xml
...
    modified:   app/build/intermediates/res/debug/values/values.xml
    modified:   app/build/intermediates/resources/resources-debug-androidTest.ap_
    modified:   app/build/intermediates/resources/resources-debug.ap_
    modified:   build/intermediates/gradle_project_sync_data.bin
    modified:   local.properties
Run Code Online (Sandbox Code Playgroud)

这是我的.gitignore,正如@Gabriele Mariotti所建议的那样:

#built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated files
bin/
gen/

# Local configuration file (sdk path, etc)
local.properties

# Windows thumbnail db
Thumbs.db

# OSX files
.DS_Store

# Eclipse project files
.classpath
.project

# Android Studio
*.iws
*.iml
.idea
.gradle
build/
*/build/
Run Code Online (Sandbox Code Playgroud)

我是否需要额外的.gitignore配置?如果我排除.idea那么为什么这些文件会显示为已更改?

Gab*_*tti 5

在项目内部,您将找到一些Android Studio文件,例如每个模块中.idea的iml文件和文件.
请查看此答案以获取更多详细信息.

这些资源包含本地路径和引用,您应该从git仓库中排除它们(.idea文件夹和iml文件).

这是.gitignore我们与Mac,Linux和Windows用户一起使用的一个例子.

#built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated files
bin/
gen/

# Local configuration file (sdk path, etc)
local.properties

# Windows thumbnail db
Thumbs.db

# OSX files
.DS_Store

# Eclipse project files
.classpath
.project

# Android Studio
*.iws
*.iml
.idea
.gradle
build/
*/build/
Run Code Online (Sandbox Code Playgroud)

如果这些文件位于git repo中,则应从远程仓库中删除它们,然后重建本地项目.