这是本文档旧的修订版!
git 回滚版本
- 查看历史版本
git log --oneline
结果示例:
c1d3a72 (HEAD -> main) 修复楼层映射界面逻辑 a5b4c11 增加批量导入功能 a14de22 初次提交
- 回滚到 c1d3a72 次的 commit
git reset --hard c1d3a72
git 提交到本地
git add . git commit -m "提交备注"
git 提交到仓库
git push
生成后事件
搜 Post,输入:
call ./del.bat
然后在根目录放一个 del.bat 文件,文件格式 UTF-8。
内容如下,自己看着改:
del ".\bin\Debug\net48\xxx.dll" del ".\bin\Debug\net48\ccc.dll"
Git 回滚后清理多余代码
当你使用 git reset 回滚版本后,工作区可能仍保留着新版本中创建但旧版本中不存在的文件(即“未追踪的文件”)。要彻底清理这些多余文件,只保留当前版本的代码,你需要使用 git clean 命令。
1. 确保版本已重置
首先,确保你的已追踪文件(Tracked Files)已经强制重置到了目标版本。
# 注意:--hard 会丢弃所有未提交的修改 git reset --hard <你的目标CommitID>
2. 清理多余文件 (git clean)
git clean 用于从工作区中删除未被追踪的文件。
2.1 第一步:安全检查(强烈推荐)
在真正删除之前,先查看一下哪些文件会被删除,防止误删重要的配置文件(如 .env 或 IDE 配置)。
git clean -nfd
- -n: (Dry run) 演习模式,不实际删除,只列出会被删除的文件。
- -f: (Force) 强制模式,Git 默认需要此参数才允许删除。
- -d: (Directory) 同时移除未被追踪的文件夹。
2.2 第二步:执行删除(标准做法)
确认上面的列表没问题后,执行以下命令。这将删除多余代码,但保留 .gitignore 中忽略的文件(如编译缓存、依赖包)。
git clean -fd
2.3 可选:彻底清理(包含构建产物)
如果你想让项目回到“刚 Clone 下来”的纯净状态,连同编译生成的文件(Ignored files)一起删掉:
git clean -fdx
- -x: 同时也删除被
.gitignore忽略的文件。 - 警告:这会删除你的 IDE 配置文件、编译输出、依赖包(如
node_modules),执行后通常需要重新 build。
