GIT是依靠文件来识别文件夹的,所以对于空的文件夹是不能识别的。
如果将一个文件夹下的所有文件都删除后,则这个文件夹也不会被识别,相应的如果将删除所有文件的操作提交后,对应的文件夹也就会自动被删除。
一个可以规避这种特点的技巧就是在空文件夹下创建一个空的.gitignore文件(或者 .gitkeep),该文件为git的忽略配置文件,但是一个真实文件,这样该文件夹就不再是一个空文件夹了。
如下的LINUX快捷命令可以为所有空文件夹自动添加一个.gitignore文件(windows下使用 git bash)**:**find . -type d -empty -exec touch {}/.gitignore \;
或者可以使用 bat 脚本:
http://ddrv.cn/a/293843
@echo off&echo 查找空文件夹
set dd=%~1
if "%~1"=="" set/p dd=输入或拖入要查找的总文件夹:
cd/d "%dd%"
for /f "delims=" %%a in ('dir/b/s/ad')do (
dir/a/s/b "%%a"|find/v "">nul||(set/a "fn+=1"&echo.路径 %%a 文件夹名 %%~nxa&type nul>>%%a\.gitignore))
if defined fn (echo 共找到 %fn% 个空文件夹,已创建.keep空文件)else echo 没找到空文件夹
pause
总体思路就是找到所有空目录,创建.gitignore文件(或者 .gitkeep)