.gitattributes
在github上,如果未指定语言,Linguist来自动识别你的代码应该归为哪一类,它是根据某种语言的代码量来决定是哪种语言的项目。如果识别有误,可以新建.gitattributes文件来进行设置。格式如下:
*.html linguist-language=go
设置多个用分号”;”隔开。
.gitignore
这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。比如最近我的golang项目使用的.gitignore内容如下:
# Mac:
.DS_Store
# Goland:
/.idea/
更具体的配置语法:
- 以斜杠“/”开头表示目录;
- 以星号“*”通配多个字符;
- 以问号“?”通配单个字符
- 以方括号“[]”包含单个字符的匹配列表;
- 以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;
此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效。
注意:
按照上面的配置有可能在某些情况下不起作用,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的,那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交,命令如下:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
git push
在IDEA中有.ignore插件,使用方便,安装方法见:《IDEA:配置》