博客
关于我
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/

你可能感兴趣的文章
MySQL“被动”性能优化汇总
查看>>
MySQL、HBase 和 Elasticsearch:特点与区别详解
查看>>
MySQL、Redis高频面试题汇总
查看>>
MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
查看>>
mysql一个字段为空时使用另一个字段排序
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>