我正在开发一个 Android Studio 项目,我的团队成员使用 Windows,我使用 OSX。
问题是,当我从 git 中提取新代码然后打开项目时,我会根据 Mac 的 SDK 位置得到各种更改:
git diff 记录了一堆与此类似的更改:
我们如何配置 Android Studio 项目,以便不必发生这些自动代码更改,或者是否有一种方法可以最大限度地减少更改的文件数量?
更新:
我更新了 .gitignore 并将其推送到远程仓库。
当我的团队更新了更多代码并且我 pull 了它时,我仍然遇到同样的问题。
这是 pull 后我的 git status 的 fragment (我使用“...”表示该文件夹中的多个文件):
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
这是我的 .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/
我需要额外的 .gitignore 配置吗?如果我排除 .idea 那么为什么这些文件显示为已更改?
最佳答案
在项目中,您会发现一些 Android Studio 文件,例如每个模块中的 .idea 和 iml 文件。
也检查 this answer了解更多详情。
这些资源包含本地路径和引用,您应该从您的 git 存储库中排除它们(.idea 文件夹和 iml 文件)。
这是我们在 Mac、Linux 和 Windows 用户中使用的 .gitignore 示例。
#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/
如果这些文件在 git 仓库中,你应该从远程仓库中删除它们,然后重建本地项目。
关于安卓工作室 : SDK location changes for same project using Mac (OSX) and Windows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32941733/
我在从html页面生成PDF时遇到问题。我正在使用PDFkit。在安装它的过程中,我注意到我需要wkhtmltopdf。所以我也安装了它。我做了PDFkit的文档所说的一切......现在我在尝试加载PDF时遇到了这个错误。这里是错误:commandfailed:"/usr/local/bin/wkhtmltopdf""--margin-right""0.75in""--page-size""Letter""--margin-top""0.75in""--margin-bottom""0.75in""--encoding""UTF-8""--margin-left""0.75in""-
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我花了三天的时间用头撞墙,试图弄清楚为什么简单的“rake”不能通过我的规范文件。如果您遇到这种情况:任何文件夹路径中都不要有空格!。严重地。事实上,从现在开始,您命名的任何内容都没有空格。这是我的控制台输出:(在/Users/*****/Desktop/LearningRuby/learn_ruby)$rake/Users/*******/Desktop/LearningRuby/learn_ruby/00_hello/hello_spec.rb:116:in`require':cannotloadsuchfile--hello(LoadError) 最佳
我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion在首页我有:汽车:VolvoSaabMercedesAudistatic_pages_spec.rb中的测试代码:it"shouldhavetherightselect"dovisithome_pathit{shouldhave_select('cars',:options=>['volvo','saab','mercedes','audi'])}end响应是rspec./spec/request
在Rails4.0.2中,我使用s3_direct_upload和aws-sdkgems直接为s3存储桶上传文件。在开发环境中它工作正常,但在生产环境中它会抛出如下错误,ActionView::Template::Error(noimplicitconversionofnilintoString)在View中,create_cv_url,:id=>"s3_uploader",:key=>"cv_uploads/{unique_id}/${filename}",:key_starts_with=>"cv_uploads/",:callback_param=>"cv[direct_uplo
使用Ruby1.9.2运行IDE提示说需要gemruby-debug-base19x并提供安装它。但是,在尝试安装它时会显示消息Failedtoinstallgems.Followinggemswerenotinstalled:C:/ProgramFiles(x86)/JetBrains/RubyMine3.2.4/rb/gems/ruby-debug-base19x-0.11.30.pre2.gem:Errorinstallingruby-debug-base19x-0.11.30.pre2.gem:The'linecache19'nativegemrequiresinstall
我知道全局变量$!包含最新的异常对象,但我对下面的语法感到困惑。谁能帮助我理解以下语法?rescue$! 最佳答案 此构造可防止异常停止您的程序并使堆栈跟踪冒泡。它还会将该异常作为值返回,这很有用。a=get_me_datarescue$!在此行之后,a将保存请求的数据或异常。然后您可以分析该异常并采取相应措施。defget_me_dataraise'Nodataforyou'enda=get_me_datarescue$!puts"Executioncarrieson"pa#>>Executioncarrieson#>>#更现实的
我已经在mountainlion上成功安装了rbenv和rubybuild。运行rbenvinstall1.9.3-p392结束于:校验和不匹配:ruby-1.9.3-p392.tar.gz(文件已损坏)预期f689a7b61379f83cbbed3c7077d83859,得到1cfc2ff433dbe80f8ff1a9dba2fd5636它正在下载的文件看起来没问题,如果我使用curl手动下载文件,我会得到同样不正确的校验和。有没有人遇到过这个?他们是如何解决的? 最佳答案 tl:博士;使用浏览器从http://ftp.rub
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路