如何在当前Git提交命令中临时排除2个目录(不使用.gitignore)
如何在Git中临时排除特定目录提交(不修改.gitignore)
没问题,要临时跳过两个目录提交又不想改动.gitignore的话,有几个实用的方法,选你顺手的来就行:
方法一:先全加再移除不需要的目录
先把所有变更都暂存起来,再把不想提交的目录从暂存区移除,操作步骤很直观:# 暂存所有文件和目录的变更 git add . # 移除指定的两个目录(仅从暂存区移除,本地文件不受影响) git reset -- path/to/dir1 path/to/dir2 # 提交剩下的内容 git commit -m "提交说明:临时排除dir1和dir2"这种方法的好处是能清晰看到自己排除了哪些内容,不容易出错。
方法二:一次性指定要提交的内容(直接排除目录)
用Git的路径排除语法,直接告诉Git“除了这两个目录,其他都提交”,一步到位:git add --all -- ':!path/to/dir1' ':!path/to/dir2' git commit -m "提交说明:临时排除dir1和dir2"注意这里的
:!是Git的特殊语法,用来排除路径;如果路径包含空格,记得用引号把整个路径括起来(比如':!path with space/dir')。方法三:用本地临时排除文件(适合多次临时排除)
如果你之后可能还需要临时排除这两个目录,可以用Git本地的.git/info/exclude文件——它的规则和.gitignore完全一样,但不会被Git追踪,属于本地专属配置:# 把要排除的目录写入临时排除文件 echo "path/to/dir1/" >> .git/info/exclude echo "path/to/dir2/" >> .git/info/exclude # 暂存所有符合规则的内容 git add . # 提交 git commit -m "提交说明:临时排除dir1和dir2" # 之后如果不需要排除了,直接编辑.git/info/exclude删掉对应的行就行
内容的提问来源于stack exchange,提问作者Patoshi パトシ
相关产品推荐
相关产品推荐

