Mercurial无法提交此前删除后重新添加的同名文件夹该如何解决
问题原因
Mercurial本身不支持直接追踪空文件夹,你遇到的提交无变更提示通常由两种情况导致:
- 新创建的EXAMPLE1文件夹为空,没有可追踪的文件
- EXAMPLE1文件夹内的所有文件都被
.hgignore规则匹配,被系统判定为忽略文件
解决步骤
1. 基础校验
- 若EXAMPLE1需要为空目录结构,在目录内新增任意占位文件即可(比如命名为
.hgkeep,无实际业务作用仅用于被Mercurial追踪) - 执行
hg status --ignored命令,检查EXAMPLE1下的文件是否被忽略规则屏蔽,若有匹配则修改.hgignore文件排除对应路径的忽略规则
2. 手动添加文件
确认内容无忽略后,执行命令强制添加目录下的所有内容:hg add EXAMPLE1/
执行完后运行hg status确认EXAMPLE1下的文件状态标记为A(待添加)即可。
3. 提交变更
正常执行提交命令即可:hg commit -m "恢复EXAMPLE1文件夹及对应内容"
异常处理
如果执行上述步骤后仍无法识别变更,先执行hg forget EXAMPLE1/清除旧的追踪标记,再重新执行hg add操作即可。
内容的提问来源于stack exchange,提问作者nanoeng
相关产品推荐
相关产品推荐

