2016-04-21 75 views
8

我想类似下面的东西:如何添加project.lock.json文件gitignore

#DNX 
project.lock.json 

*.lock.json 

,但它似乎并没有被忽略这些文件。

+1

文件'project.lock.json'是否已被'git'跟踪? – axiac

+0

无论何时我改变项目中的任何内容并编译它,它都会显示出来(在挂起的更改列表中)。我不想提交它们,所以想把它们添加到gitignore文件中。 – tavier

+2

的可能的复制[制作混帐“忘记”关于被跟踪,但文件现在处于的.gitignore(http://stackoverflow.com/questions/1274057/making-git-forget-about-a-file-that-被追踪 - 但现在在gitignore) – axiac

回答

12

如果文件已经追踪到git的,则必须首先将其删除(物理文件必须放置了git的文件夹的时间),提交更改,然后再添加文件到文件夹。然后git会开始用你的指令忽略它。

+11

或者你可以离开该文件在那里,但使用该索引中删除它'git的RM --cached project.lock.json'。这个答案建议的解决方案也可以工作,但在提交之前仍然需要运行'git rm project.lock.json'或'git add project.lock.json'(将删除放入要提交的更改列表中) 。 – axiac

+4

如果你有几个项目,使用'git的RM -r --cached * .lock.json'在你的根(解决方案)目录删除project.lock.json文件索引中的所有子文件夹。 –

1

https://docs.microsoft.com/en-us/nuget/schema/project-json

的project.lock.json文件在使用project.json项目恢复 的包的NuGet的过程中产生。它拥有一个 快照作为的NuGet走 图形软件中,包括版本,内容和相关性项目中的所有包的 产生的所有信息。构建系统使用它来 选择从全球的位置建设 当项目,而不是取决于在 项目本身的本地文件夹的包是相关的包。这导致构建性能更快,因为它只需要读取project.lock.json而不是许多单独的 .nuspec文件所需的 。

的project.lock.json上包自动生成还原, 因此它可以从源控制通过添加它的.gitignore 和.tfignore文件删去。但是,如果将其包含在源代码管理中,则更改历史记录将显示随时间推移而解决的依赖关系中的更改。