博客
关于我
git在commit时候不commit某些文件
阅读量:683 次
发布时间:2019-03-17

本文共 887 字,大约阅读时间需要 2 分钟。

前言

不多个版本控制系统的用户都会遇到这样的问题:某些文件不应该提交到版本控制系统中。本文将详细介绍两种常见情况,并提供相应的解决方案。
  • 这种文件从未推送到仓库
  • 该文件已被推送到仓库,但不希望后续更改生效(如包含密码的配置文件)

第一种情况:文件从未推送到仓库

想避免某些文件被提交到仓库,可以通过创建一个.gitignore文件来实现。添加相应的规则后,运行git add .时,这些文件将被排除在外,从而不会提交到仓库。此外,IDE(如IntelliJ IDEA)自动生成的Spring Boot项目通常会自动生成一个.gitignore文件,内容如下:
HELP.md  target/!  .mvn/wrapper/maven-wrapper.jar  **/src/main/**/target/  **/src/test/**/target/  注释:#**/src/main/java/com/Property.java  注释:#**/src/main/resources/application.properties
如果已经将文件提交到缓存区但希望撤销,可以使用以下命令:
git rm -r --cached src/main/java/test.java git add .
这样提交后,该文件将不再出现在仓库中。

第二种情况:文件已推送到仓库,但不希望后续更改生效

有时候你想要保留仓库中的某些properties文件,但又不想提交包含密码的文件。这时可以使用以下方法:
git update-index --assume-unchanged src/java/test.java
这样再次提交时,该文件将被忽略。当想恢复跟踪时,可以运行:
git update-index --no-assume-unchanged src/java/test.java
需要注意的是,在IDE中,设置成功后,文件修改将不会显示未提交状态,而是显示为白色表示已提交。
总之,Git提供了灵活的版本控制工具,可以根据实际需求选择适当的方法来管理文件提交和忽略问题。

转载地址:http://yczhz.baihongyu.com/

你可能感兴趣的文章
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Navicat Premium 12 卸载和注册表的删除
查看>>
navicat 系列软件一点击菜单栏就闪退
查看>>
navicat 连接远程mysql
查看>>
Navicat下载和破解以及使用
查看>>
Navicat可视化界面导入SQL文件生成数据库表
查看>>
Neat Stuff to Do in List Controls Using Custom Draw
查看>>
NeHe OpenGL教程 第四十四课:3D光晕
查看>>
neo4j图形数据库Java应用
查看>>
Neo4j安装部署及使用
查看>>
Neo4j电影关系图Cypher
查看>>
Neo4j的安装与使用
查看>>
Neo4j(2):环境搭建
查看>>
Neo私链
查看>>
Nerves 项目教程
查看>>
nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
Nessus漏洞扫描教程之配置Nessus
查看>>
Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
查看>>