更新gitignore后如何使其生效

 

Files already tracked by Git are not affected; 

Git - gitignore Documentation https://git-scm.com/docs/gitignore

gitignore - Specifies intentionally untracked files to ignore

 

NOTES

The purpose of gitignore files is to ensure that certain files not tracked by Git remain untracked.

To stop tracking a file that is currently tracked, use git rm --cached.

   

更新gitignore后如何使其生效_Falcon2000的专栏-CSDN博客 https://blog.csdn.net/Falcon2000/article/details/82830639

我们应该先把本地的缓存删除,然后再进行push,操作步骤如下

  1.   git rm -r --cached . // 删除本地缓存
  2.   git add . // 添加要提交的文件
  3.  

 

 【实践出真知】

注意,上述会导致提交后的diff变动为与clone本地文件时的commentId 做比较

例如

git clone -b test url

git log commentId01 

本地先后提交了02,03,04,05;

在提交06前执行了 git rm -r --cached .  会导致 push 06后,diff是相对01的,而非相对05的;虽然提交的内容确实是06下的内容。

 

[git] 如何解决修改了.gitignore却不生效 - 简书 https://www.jianshu.com/p/6d06583c536c

1、问题描述:

在使用git时,想忽略某些不想提交的文件,可以在项目中修改.gitignore文件,如果没有这个文件,可以手动建一个。但是常常发现修改后,点击提交,发现没有生效。

2、原因分析:

因为.gitignore只能忽略那些原来没有被track过的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。解决方法就是先把本地缓存删除(改变成未track状态),然后再提交。

3、解决办法:

在所在的库逐次执行下面命令:

git rm --cached --force "file-to-path"
git rm --cached --force "file2-to-path"
...

 

上一篇:GIT RM -R --CACHED 去掉已经托管在GIT上的文件


下一篇:android studio 3.6 No cached version of***available for offline mode