博客
关于我
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 - ERROR 1406
查看>>
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
multi swiper bug solution
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
MySQL binlog三种模式
查看>>
multi-angle cosine and sines
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>
Multicast1
查看>>