2

我正在尝试将我的项目更改从使用 Visual Studio 2017 的 C# 项目提交并推送到我的私有 gitea 存储库。不幸的是,像 bin、debug 这样的构建输出以及 VS 缓存文件夹 .vs 总是被添加到更改列表中。

当我输入 'git add 。我收到以下错误:

error: open(".vs/xyz/v15/Server/sqlite3/db.lock"): Permission denied
error: unable to index file .vs/xyz/v15/Server/sqlite3/db.lock
fatal: adding files failed

对我来说问题很清楚。Git 尝试将 .vs 子文件夹添加到更改列表中,但无法这样做,因为 Visual Studio 已锁定数据库。

我从这里下载了一个 .gitignore 文件:

https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

将其复制到项目文件夹的根目录并将其重命名为 .gitignore。我检查了这个文件和文件夹的权限,并且用户具有完全的写权限(顺便说一下,我使用的是 Windows 10)。

在命令行中我这样做了:

git rm -r --cached .

它从存储库中删除了我的所有源文件。我犯了这个改变

git commit -am "removed source files"

并阅读并提交了我的 git igore 文件

git add .\.gitignore
git commit -am "readded gitignore"

当我使用命令时

git check-ignore -v .vs

我没有得到任何输出,它以某种方式告诉我,git 没有使用 gitignore 文件。

我正在为 Windows 版本 2.17.1.windows.2 使用 git。此外,我安装了 tortoiseGit,我将其用于其他项目(我不确定它会干扰 git,所以我提到它)。

4

1 回答 1

2

好的,我的问题解决了!这是一个棘手的问题。根据我的记事本++,.gitignore 文件编码设置为“UCS2 BE BOM”。我将编码转换为 UTF-8,瞧,我能够添加我的文件。

于 2019-03-25T12:24:29.373 回答