.gitignore释疑

  1. 自己总结:
    1. *.a--匹配任意路径下的.a文件
    2. a/--匹配任意路径下的a文件夹
    3. a/*--匹配根目录下的文件夹a下的任意文件(等同于 /a/* 或 /a/)  ----一般情况下不会有这种写法
    4. /a--匹配根目录下的文件a
    5. /a/--匹配根目录下的文件夹a(等同于 /a/*)
    6. *--匹配任意字符(零个或多个字符)
    7. */--匹配任意1个目录
      1. */--匹配根目录下的任意1个目录(等同于/*/)
      2. a/*/--匹配a目录下的任意1个目录(等同于 /a/*/)
      3. a/b/*/--匹配b目录下的任意1个目录(等同于 /a/b/*/)
    8. **/--匹配任意目录(零个或多个目录;**后面肯定跟着斜杠/,否则等同于独*)
    9. 如果文件夹a为空目录,则不允许加入版本库
      1. 就算a曾经加入过版本库,但清空a下的所有文件之后,a也会被移出版本库
        1. 此时,加入新文件b中,git st时,只会提示a未跟踪,而不会提示b
      2. 如果要把一个空目录a加入版本库,可以在a下新建一个文件.gitkeep,然后再进行提交
  2. 问题
    1. */App_Data/与**/App_Data/,效果不一样?
      1. 自答:
        1. */--匹配任意1个目录
          1. */--匹配根目录下的任意1个目录
          2. a/*/--匹配a目录下的任意1个目录(注意等同于 /a/*/)
          3. a/b/*/--匹配b目录下的任意1个目录(注意等同于 /a/b/*/)
        2. **/--匹配任意目录(0个或多个)
      2. */App_Data/--匹配根目录下的任意子目录下的App_Data
        1. 即:只匹配/a/App_Data/,不匹配/App_Data/,也不匹配/a/b/App_Data/
      3. **/App_Data/--匹配根目录的子孙目录App_Data
        1. 即:匹配/App_Data/、匹配/a/App_Data/、匹配/a/b/App_Data/
时间: 2024-08-06 15:58:16

.gitignore释疑的相关文章

gitignore git忽略文件

gitignore文件内容 .settings/ .gitignore .project .classpath .settings/ #忽略当前目录及子目录内的所有.settings文件夹 .gitignore #忽略当前目录及子目录内的所有.gitignore文件 .project .classpath

关于使用Github,gitignore不起作用的解决方法

直接上解决方法: 1 2 3 git rm -r --cached . git add . git commit -m 'update .gitignore' 解释: .gitignore文件,具体的规则一搜就有.我在使用Git的过程中,明明写好了规则,但问题不起作用,每次还是重复提交,无法忍受.其实这个文件里的规则对已经追踪的文件是没有效果的.所以我们需要使用rm命令清除一下相关的缓存内容.这样文件将以未追踪的形式出现.然后再重新添加提交一下,.gitignore文件里的规则就可以起作用了.

gitignore相关

用git也有一段时间了,前些天在公司fork一个新的项目着手做,结果这个项目的creator早先把eclipse的配置文件也提交了上去,后续其他参与者提交代码时,这几个文件总是要注意不选中. 虽然不影响工作,但是看那红色点点以及每次提交都要去掉勾选,就想着把这些没用的干掉. 先是配置.gitignore文件,配置文件的写法参考 http://www.pfeng.org/archives/840 ,就不复粘了,很简单的规则. 然后提交了.gitignore之后,merge以后,好像还是没有生效,搜

IntelliJ IDEA 的 .idea 目录加入.gitignore无效的解决方法

无效的原因是:对应的目录或者文件已经被git跟踪,此时再加入.gitignore后就无效了, 解决办法: 先执行 [文件夹]  git rm -r --cached .idea [文件]     git rm --cached demo-project.iml 再重新加入.gitignore文件 解决方法来源:http://stackoverflow.com/questions/9550437/how-to-make-git-ignore-idea-files-created-by-rubymi

Git服务器的Gitosis安装配置及gitignore的使用方法

Git服务器Gitosis安装设置 1.安装 openssh服务器 sudo apt-get install openssh-server openssh-client 2.创建个人公钥和私钥 在默认用户的主目录路径下,运行以下命令,按照提示创建公钥和私钥 ssh-keygen -t rsa 默认生成2048位,如果需要提高安全级别,也可以通过下面的命令创建公钥和私钥 ssh-keygen -t rsa -b 4096 默认情况下,公钥和私钥会保存在~/.ssh目录下,如下所示: id_rsa

Github用.gitignore忽略指定文件

.gitignore Github提供.gitignore这种功能,可以自己指定哪些文件可以不被管理.具体方法是在版本管理的根目录下(与.git文件夹同级)创建一个.gitignore. 应用实例 项目中有clist.h clist.c  main.c三个文件,编译执行后,生成了三个文件  clist.o  main.o   main.这三个文件是不需要进行版本管理的,所以需要忽略这些文件,使用 git  stauts查看后,发现这三个文件也是处于 Untracked files状态.而实际上我

.gitignore(转载)

转自:http://blog.csdn.net/liuqiaoyu080512/article/details/8648266 git 可以管理所有文件的变更, 但并不是所有文件都有意义. 大部分二进制文件没有意义 比如说 VC 工程的 Debug 和 Release 文件夹下的文件, 或者 java 项目的 bin 文件夹中的 class 文件, 这些文件都是基于源代码生成的, 只要有源代码就能生成出来,所以版本管理的时候应该忽略它们. 有些文本文件也没有意义 比如说 VC 工程中的 .plg

http返回头中content-length与Transfer-Encoding: chunked的问题释疑

先说说问题出现的背景:        公司服务器与手机客户端交互,客户端请求一个动态生成的XML文件,在用firebug查看http响应头的时候,有时候发现有content-length属性,有时候没有这个属性,取而代之的是Transfer-Encoding: chunked属性.由于客户端强制要求,服务器端必须返回content-length,否则,客户端将不予解析.于是测试发现,当XML文件很小的时候,是有content-length属性的,到达一个值时,就成了Tansfer-Encodin

windows server 2012 70-413认证释疑

Question 7 You need to recommend which changes must be implemented to the network before you can deploy the new web application. What should you include in the recommendation? A.Change the forest functional level to Windows Server 2008 R2 B.Upgrade t