zoukankan      html  css  js  c++  java
  • 查找git ignore的追踪

    前言

    版本控制说简单也简单,说复杂也困难的多。作为开发者,最基础的版本管理和团队协作的功能必须掌握。而其他一些相关的信息也可以了解下。比如,这次就有同事遇到了问题。

    遇到的问题

    在windows下,往repo里添加了一个xxx.exe文件,然后检查sourceTree却并没找到暂存的更改。

    解决

    我由于长时间不用source tree, 也不用eclipse,对这两种工具里的git操作也不太熟悉,幸好git的操作都是基于命令行的。

    我先检查了.gitignore文件,发现里面并没有忽略所添加的xxx.exe。然后就很奇怪,难道会有global的ignore?果然,真有!

    可以通过以下命令确定我们的被ignore的规则:

    D:workspacelearngit-test>git check-ignore -v src/git-bash.exe
    "C:\Users\Ryan\Documents\gitignore_global.txt":6:*.exe      src/git-bash.exe
    

    从结果可以看出,果然存在一个global的配置。

    
    #ignore thumbnails created by windows
    Thumbs.db
    #Ignore files build by Visual Studio
    *.obj
    *.exe
    *.pdb
    *.user
    *.aps
    *.pch
    *.vspscc
    *_i.c
    *_p.c
    *.ncb
    *.suo
    *.tlb
    *.tlh
    *.bak
    *.cache
    *.ilk
    *.log
    *.dll
    *.lib
    *.sbr
    
    

    删除第6行的rule。于是发现可以继续追踪文件了。

    gitignore的意义

    在开发过程中发现很多同事并不理解gitignore的意义所在,经常看到有同事新建了一个repo,然后并没有.gitignore,然后就会发现推送一堆ide或生成的配置文件到remote。或者,并没有推送过去,但当我clone下来,然后本地修改提交后发现很多不需要的文件被追踪。后来发现,原来大家习惯了source tree,然后都是提交的时候选择想要的文件,然后推送。这真是个令人不开心的发现。个人认为,这种做法对开发是很不友好的,虽然source tree的图形化界面简化了git使用。但如果忘了提交某个文件怎么办?如果不小心多添加了文件怎么办?如果一次添加了大量的文件如何排查?所以,除了要添加.gitignore之外,系统的学习下git的使用也是很有必要的。

    比如,曾经遇到过这样的问题,由于repo最初没有gitignore,我后面加上ignore之后,发现被ignore的文件依旧会被追踪。那么,如何彻底的清除和ignore这些文件呢?

    参考

  • 相关阅读:
    Jmeter参数化-用户定义的变量
    Jmeter进行文件下载
    Jmeter进行文件上传
    Jmeter进行HTTP接口测试
    Jmeter元件作用域及执行顺序
    activiti 汉化
    Spring boot web app项目
    spring boot整合activiti rest api详细教程
    Spring Boot自动配置原理
    spring bean注解使用详解
  • 原文地址:https://www.cnblogs.com/woshimrf/p/check-git-ignore.html
Copyright © 2011-2022 走看看