这段时间一直在用GIT做本地自己写的程序的源码管理工具,在使用的过程中发现了一个问题:Git往往会把NuGet的packages文件夹作为项目的一部分给添加进来了。网上搜了一下,原因是GIT只是和文件夹相关,并没有和项目相关联,某个文件就算不在项目中,也会作为项目的一部分给提交。对于这些文件,则需要在.gitignore文件中排除,排除的语法也不算太复杂,具体的可以看看这篇文章

比较人性化的是,VisualStudio已经预置好了这个文档,这也是Debug等临时文件夹默认情况下没有被提交的原因。虽然也预留了Nuget文件夹的排除选项,但默认情况下并没有放开。只需要将其放开即可。

但是,实际的使用过程中,发现把这个开关放开也不好使。究其原因:.gitignore对已经提交的文件是没有效果的。也就是说,它只能针对未跟踪的文件列表生效,并不能对包含的修改和排除的修改列表文件生效。而初次加入Git托管的时候已经把NuGet加入进来了,此时再编辑.gitignore文件也是没有效果的。

正确的做法是:

  1. 将工程加入Git管理,此时会生成.gitignore文件。
  2. 查看更改的文件,会发现此时Nuget文件夹会被加进包含的修改列表来了,在文件夹上点击右键选择撤销(并不会删除文件),此时Nuget文件夹便会进入未跟踪的文件列表中。
  3. 编辑.gitignore文件,加入Nuget排除项,此时它就会从未跟踪的文件列表中清除掉了。

使用GIT时排除NuGet的packages文件夹的更多相关文章

  1. TFS中如何排除Nuget的Packages文件夹

    在项目的解决方案下新增.tfignore文件.文件内容如下: \packages 在项目的解决方案下新增.nuget文件夹,并新增Nuget.config文件,文件内容如下: <?xml ver ...

  2. git如何删除已经提交的文件夹

    在上传项目到github时,忘记忽略了某个文件夹.idea,就直接push上去了, 最后意识到了此问题,决定删除掉远程仓库中的.idea文件夹 删除前: 删除后: 在github上只能删除仓库,却无法 ...

  3. git忽略以点开头的文件夹

    git忽略以点开头的文件夹 好像不是什么问题,可是我用的时候不好使,还是记录下 参考:http://www.oschina.net/question/1437985_2181276

  4. 【.Net Core】编译时禁止自动生成netcoreapp文件夹

    原文:[.Net Core]编译时禁止自动生成netcoreapp文件夹 每次在编译生成文件时,VS都会自动在<OutputPath>属性指定的路劲后再追加一个用NetCore命名的文件夹 ...

  5. 从git上check out指定的文件夹至本地

    当项目过大时,从服务器上拉取项目是件很头疼的事情,那么就说说怎么只拉区某个或几个文件夹至本地. git clone -n git@172.0.0.10:test/test_platform.git c ...

  6. python连接mysql时连接不到test文件夹怎么办

    最新版mysql安装后默认是没有test文件夹的,这时候需要我们自己创建一个test文件夹, 文件默认路径如下    C:\ProgramData\MySQL\MySQL Server 5.7\Dat ...

  7. git fetch批处理,遍历一个文件夹下的所有子目录,执行git fetch --all

    echo off for /d %%i in (*) do ( echo %%i cd %%i git fetch --all cd .. ) 判断子目录是否有.git文件夹 echo off for ...

  8. SVN提交时忽略不必提交的文件夹和文件,如node_modules

    空白处右键>选中TortoiseSVN>设置(settings)>常规设置(General)>Subversion>编辑(edit)>在弹出的config文件中找g ...

  9. git删除远程仓库中的文件夹

    具体操作如下: git rm -r --cached .history    #删除目录 git commit -m”删除.history文件夹” git push -r表示递归所有子目录,如果你要删 ...

随机推荐

  1. 一个IT中专生在深圳的9年辛酸经历

    一个IT中专生在深圳的9年辛酸经历 想一想来到深圳已经近10年了,感概万千呐!从一个身无分文的中专职校计算机毕业出来后,竟然大胆的南下(之前可是连我们那地区之外都没去过),现在有供完的房子,温柔的妻子 ...

  2. Drupal7导入语言包

    下载语言包 然后把包存放在profiles\standard\translations目录下,安装. 如果出现如下错误 1.错误有MySql数据库默认引擎innoDB引起,只要mysql\bin\my ...

  3. 【hdu2222-Keywords Search】AC自动机基础裸题

    http://acm.hust.edu.cn/vjudge/problem/16403 题意:给定n个单词,一个字符串,问字符串中出现了多少个单词.(若单词her,he,字符串aher中出现了两个单词 ...

  4. [vue-router] Failed to resolve async component default: Error: Loading chunk 0 failed.

    在整合laravel5.4 和vue2.1的时候遇到一个奇怪的问题 Uncaught SyntaxError: Unexpected token < Error: Loading chunk 0 ...

  5. 【mysql优化1】表的优化与列类型选择

    数据类型及字节数参考http://www.cnblogs.com/qlqwjy/p/8590639.html -------------------------表的优化:--------------- ...

  6. GitLab版本管理【转】

    转自:http://www.cnblogs.com/wintersun/p/3930900.html GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目 ...

  7. (12)Linux shell之read 用法

    Linux shell之read 用法 #!/bin/bash#read 用来读取屏幕输入或是读取文件内容.read -p  "please input you  name: " ...

  8. Mysql启动服务提示系统找不到指定的文件

    Mysql启动服务: C:\Windows\system32>net start mysql发生系统错误 2. 系统找不到指定的文件. 怎么还是报这个错?难道不是由于配置的原因?对,不是由于上面 ...

  9. ORM- 图书系统查询

    图书信息系统 表结构设计 # 书 class Book(models.Model): title = models.CharField(max_length=32) publish_date = mo ...

  10. iPhone手机关闭ios10自动更新

    在手机上打开safari,地址栏输入:https://oldcat.me/web/NOOTA9.mobileconfig然后回车按照要求安装此provision文件即可,然后重启.桌面出现一个反馈感叹 ...