Git的自定义和特殊文件配置

简介: 本文参考于廖雪峰老师的博客Git教程。依照其博客进行学习和记录,感谢其无私分享,也欢迎各位查看原文。 实际开发中,总有一些特殊文件不能提交。比如保存了数据库密码的配置文件等。 但是这些文件创建后,在g

备注:

本文参考于廖雪峰老师的博客Git教程。依照其博客进行学习和记录,感谢其无私分享,也欢迎各位查看原文。

知识点

  • 配置Git显示颜色git config --global color.ui true
  • .gitignore配置忽略文件,且要提交到版本库
  • git add -f <file>,强制添加filegit check-ignore检查忽略规则

自定义Git

在安装Git时,有对Git进行全局配置,用户名和邮箱(user.nameuser.email)
也可以配置其他选项

  • 配置Git显示颜色
$ git config --global color.ui true

忽略特殊文件

实际开发中,总有一些特殊文件不能提交。比如保存了数据库密码的配置文件等。

但是这些文件创建后,在git status时会显示Untracked files ...,而且不小心添加上后就会被提交。

.gitignore忽略文件

Git中,可以在Git工作区的根目录下,创建一个.gitignore文件,写上需要忽略的文件名,Git就会自动忽略这些文件。

关于不同语言和环境中推荐的忽略文件的配置,可以查看github项目gitignorehttps://github.com/github/gitignore 中示例。

忽略文件的原则是:

  1. 忽略操作系统自动生成的文件,比如缩略图等;
  2. 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
  3. 忽略带有敏感信息的配置文件,比如存放口令的配置文件。

忽略文件示例

比如,忽略Windows下自动生成的缩略图文件,自定义目录中的Desktop.ini文件,windows自动生成的垃圾文件。

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

比如,忽略Python编译产生的.pyc.pyodist等文件或目录

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

上面的文件,加上自定义的文件,就可以得到一个完整的gitignore文件

# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini

# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build

# My configurations:
db.ini
deploy_key_rsa
  • .gitignore文件提交到Git。
检验 .gitignore的标准是 git status命令是不是说 working directory clean

使用Windows的童鞋注意了,如果你在资源管理器里新建一个.gitignore文件,它会非常难以理解地提示你必须输入文件名,但是在文本编辑器里“保存”或者“另存为”就可以把文件保存为.gitignore

此限制和问题,已经在Win10最新版中不存在了。其他版本和更具体的版本号未测试

.gitignore文件查看和强制添加

  • 当一个文件被.gitignore忽略后,便不能添加到git暂存区
$ git add App.class
The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.
  • 强制添加忽略的文件

如Git提示,加上-f参数,可以强制添加文件到Git

$ git add -f App.class
  • git check-ignore命令检查忽略规则,从而修改规则
$ git check-ignore -v App.class
.gitignore:3:*.class    App.class

Git提示.gitignore的第3行规则忽略了该文件。

相关文章
|
6天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
20 2
|
12天前
|
算法 网络安全 开发工具
[Git]关联远程库的两种方法及配置
本文介绍了 git 的四种连接方式:ssh 连接、HTTPS 连接、SVN 连接和 SVN + ssh 连接,重点讲解了 HTTPS 和 ssh 连接方式的配置及注意事项。文章详细解释了 HTTPS 连接的身份验证过程、常见问题及解决方案,以及 ssh 连接的公钥和私钥的创建、配置方法。此外,还介绍了如何在同一台电脑上连接多个 gitee 账号的方法。
44 0
[Git]关联远程库的两种方法及配置
|
1月前
|
Shell 开发工具 git
git学习三:git使用:删除仓库,删除仓库内文件
通过GitHub的设置页面删除仓库,以及如何使用Git命令行删除仓库中的文件或文件夹。
135 1
git学习三:git使用:删除仓库,删除仓库内文件
|
1月前
|
开发工具 git 索引
git上面中新建gitignore文件,并且去除已经在仓库版本管理中的文件夹
git上面中新建gitignore文件,并且去除已经在仓库版本管理中的文件夹
58 4
|
1月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
37 1
|
2月前
|
网络协议 开发工具 网络虚拟化
SourceTree git 配置代理
SourceTree git 配置代理
61 1
|
1月前
|
编译器 网络安全 开发工具
git学习五:切换本地仓库出现的问题。修改git配置初始化。error:src refspec master does not match any。错误总结,送上几个案例
这篇文章是关于Git使用中遇到的一些问题及其解决方案的总结,包括切换本地仓库时的问题、修改Git初始化配置、以及解决"error: src refspec master does not match any"错误等。
51 0
|
开发工具 git
git 配置本地代理
git 配置本地代理
417 0
|
Web App开发 开发工具 git
|
12天前
|
缓存 Java Shell
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
32 1
[Git]入门及其常用命令