我正在使用TortoiseGit而且我很困惑为什么我项目的bin
文件夹(VS2015)中的文件受版本控制。我原以为.gitignore
中的这一部分会阻止bin
文件夹中的文件被版本化。
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
x64/
build/
bld/
[Bb]in/
[Oo]bj/
答案 0 :(得分:1)
我不太了解TortoiseGit,但是我会假设bin文件夹中的某些文件之前已经提交过,之后又被更改了。 gitignore文件仅忽略不属于存储库的文件。
要检查是否是这种情况,您最好查看bin文件夹。应该有一些标记为已修改的文件(可能需要打开一些标记为已修改的文件夹以查找文件)。如果你找到了这样一个文件,那就做一个git log(我认为这应该可以通过文件的上下文菜单使用TortoiseGit)。然后,您应该再找到一个包含该文件的提交。
有两种方法可以解决这个问题:
可能您根本不希望该文件包含在您的存储库中,例如因为它是由您的构建过程构建的,因此无需对该文件进行版本控制。在这种情况下,您可以按照this answer中的说明从存储库中删除该文件。之后提交和bin文件夹上的提交不应再被标记为已修改。
如果出于某种充分的理由,您希望将该文件保留在版本控制下但忽略对其的更改,则可以将其标记为"假设未更改"在您的本地存储库中。在this answer中描述了如何使用TortoiseGit。请注意,这仅适用于您的本地存储库。
如果您需要一个全局解决方案来将该文件存储在git中但忽略对它的更改,那么了解它是什么类型的文件以及为什么需要对其进行版本控制但又不想跟踪对它的更改是很重要的。文件。