android git .gitignore 忽略文件基本配置 经常冲突解决

本文介绍android开发在使用git多人开发时出现各种更新冲突、无法运行、虽然添加了忽略但仍然冲突等问题

1.首先删除其他所有的.gitignore文件,只留下根目录的(你只需要一个)
2.配置如下

*.iml
*.bat
*.apk
# app用到zip的请忽略
*.zip
# 自定义了local.properties的请删除这条
local.properties
/captures
~$*
gradlew
.DS_Store
.idea
.gradle
# 自定义了根目录gradle/gradle-wrapper.properties的请删除这条(不推荐自定义)
gradle
build

ps:博主的这套忽略配置让你的项目可以在任意电脑使用as打开无需额外文件、无需额外配置哦(和Android studio build.gradle 基本设置配置搭配味道会更好哦),当然as的版本是不能差距太大

配上一些忽略规则说明:

/表示忽略指定目录下的文件或文件夹:/.idea(忽略根目录下的.idea文件或文件夹)
*表示n个字符:/*(忽略所有文件)    *.apk(忽略以.apk结尾的文件或文件夹)
?表示1个字符:??.apk(你懂得)
[]表示可能是数组中的某1个字符
!表示不忽略 !*.java(不忽略以.java结尾的文件或文件夹)

默认的local.properties大致如下:

## This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Tue Jan 08 09:54:47 CST 2019
ndk.dir=/用户目录/Library/Android/sdk/ndk-bundle
sdk.dir=/用户目录/Library/Android/sdk

默认的gradle-wrapper.properties大致如下:

#Mon Jan 07 17:16:39 CST 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

问题解决:

我忽略了这些文件为什么还是被提交并且别的小伙伴还会冲突?

原因:虽然你忽略了这些文件,但是该文件已经被记录并且会一直随着变化更新的。

解决方案:(主要思路:删除远端这些无用文件,重新提交.gitignore)

1.叫上你的小伙伴代码同步一下

2.删除.gitignore并提交(为了后面能删除远端无用代码)

git add .gitignore
git commit -m 忽略文件删除
git push

3.删除所有无关的临时文件:关掉as,打开项目文件夹删除所有无关文件(就是.gitignore所要忽略的文件),大致有根目录下的.gradle、.idea、build(自定义请保留)、gradle、gradlew、gradlew.bat、local.properties(自定义请保留)以及app和第三方目录下的build、app.iml,删除完后如图:

注意:别把AndroidX的gradle.properties删掉了

android git .gitignore 忽略文件基本配置 经常冲突解决_第1张图片

4.根目录创建.gitignore把上面的配置复制进去(自定义的注意删除)
5.使用cmd或控制台到当前项目下将代码全部提交,命令大致如下:

cd 你的项目路径
git add .
git commit -m 忽略文件同步
git push
6.叫上你的小伙伴再同步一下,此时可能会冲突,如果你配置的正确这些应该都是无用的文件,确认一下同步删除即可
7.全部小伙伴关闭as再打开(一路点ok)就可以愉快的任意玩耍啦

结尾小建议:根目录的build.gradle可能会和小伙伴们的as版本不同配置各不一样,博主的建议是全部都升级到同一个新的版本,如果实在不行同样也可以忽略该文件

随便发一个我项目的demo示例吧:https://github.com/weimingjue/HongBaoTest

 

转载请注明出处:王能的博客https://blog.csdn.net/weimingjue/article/details/86287739

你可能感兴趣的:(android教程,不做框架只做UI)