因为正在开发visual studio中的项目并且我正在尝试提交更改,并且我已经在.gitignore中添加了我不想提交它们的文件。以及我在.gitignore文件中添加了/.vs/slnx.sqlite,但它仍显示为未提交的文件。我必须做什么。 请帮我解决这个问题
`/.vs/angular2-research/v15
/.vs/config/applicationhost.config
/.vs/slnx.sqlite
/.vs/slnx.sqlite-journal
/cleanui/cleanui-admin-template-angular/node_modules
/cleanui/.vs
/.vs
slnx.sqlite
*.sqlite
/.vs/*.sqlite
.vs/*.sqlite`
答案 0 :(得分:3)
它显示为未提交?如果是这种情况,那么将其添加到.gitignore不会改变任何原因,因为.gitignore仅适用于未跟踪文件(git目前尚未跟踪的文件......如果file已经在之前的版本中提交了[因此是HEAD的一部分]然后.gitignore什么也没有改变)....所以,要遵循两种方法:
将文件保留在项目中,但如果更改,请特别要求git not 关注。然后你可以git update-index --assume-unchanged somefile
从分支的历史记录中删除该文件。这是一个完全不同的尝试,需要重写分支(或分支)的历史Completely remove file from all Git repository commit history
答案 1 :(得分:1)
您可能已暂存该文件。 (请发布git status
的结果以澄清确切的问题)。试试git reset <filePath>
。如果这不起作用,则该文件可能先前已提交,您可以尝试git rm --cached <filePath>
。
答案 2 :(得分:1)
您在未提交的更改中看到该文件,因为该文件已在Git存储库中提交,并且在本地构建中它再次有一些更改,这些更改显示在未提交的更改中。
要避免这种情况,请从本地存储库中删除该文件,然后将更改推送到git服务器存储库。 gitignore仅适用于尚未使用git repo的新文件。
由于
答案 3 :(得分:1)
我在 Visual Studio 2019 中创建新项目时得到了同样的结果。我在 gitignore 文件的以下行中添加了“2019”。这对我有用。
# Visual Studio 2015/2017/2019 cache/options directory
.vs/
答案 4 :(得分:0)
请记住,这些文件存储了一些本地用户设置和项目首选项(例如您打开的文件)。因此,每次您在IDE中导航或进行某些更改时,该文件都会更改,因此它会将其检出并显示为未提交的更改。
对于slnx.sqlite,我完全摆脱了它,如下所示:
git rm {PATH_OF_THE_FILE}/slnx.sqlite -f
git commit -m "remove slnx.sqlite"