Git忽略当前的变化

时间:2016-08-28 05:53:16

标签: git

我正在为android构建内核,我已经设置了git,因此忽略了所有生成的.o文件。我在构建之前做了第一次提交(改变了一些selinux的东西),这很好。

我构建了我的内核,当我尝试运行另一个提交时,它列出了在构建期间更改的数千个.c.h文件,我不想提交,因为它是不必要的,我显然不能排除这些文件,因为如果我稍后修改它们,我就无法提交它们。

有关如何忽略在构建期间修改过的所有文件的任何想法吗?

3 个答案:

答案 0 :(得分:4)

git update-index --assume-unchanged file

来自git update-index的文档:

  

指定此标志时,不会更新为路径记录的对象名称。相反,此选项设置/取消设置路径的“假定未更改”位。当“假设未更改”位打开时,用户承诺不更改文件并允许Git假定工作树文件与索引中记录的内容匹配

撤消&再次开始跟踪,
git update-index --no-assume-unchanged file

答案 1 :(得分:1)

我所采用的方式是在项目的根目录中使用一个简单的git checkout -- .。这样做会将所有跟踪的文件重置为HEAD提交时的状态。

答案 2 :(得分:0)

也许写一下你想忽略的文件模式ini .git/info/exclude

ref Few questions with GIT, possible to have custom .gitignore? Read only access?

通过这种方式,您不必在.gitignore中添加忽略规则,也可以忽略要忽略的文件。

有关详细信息,您可以查看gitignore.io生成的忽略规则:https://www.gitignore.io/api/android。附在下面:

# Created by https://www.gitignore.io/api/android

### Android ###
# Built application files
*.apk
*.ap_

# Files for the ART/Dalvik VM
*.dex

# Java class files
*.class

# Generated files
bin/
gen/
out/

# Gradle files
.gradle/
build/

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

# Proguard folder generated by Eclipse
proguard/

# Log Files
*.log

# Android Studio Navigation editor temp files
.navigation/

# Android Studio captures folder
captures/

# Intellij
*.iml
.idea/workspace.xml
.idea/libraries

# Keystore files
*.jks

### Android Patch ###
gen-external-apklibs