git clean(转载)
2016-05-03 14:07
281 查看
git clean命令用来从你的工作目录中删除所有没有tracked过的文件.
git clean经常和git reset --hard一起结合使用. 记住reset只影响被track过的文件, 所以需要clean来删除没有track过的文件. 结合使用这两个命令能让你的工作目录完全回到一个指定的<commit>的状态.
是一次clean的演习, 告诉你哪些文件会被删除. 记住他不会真正的删除文件, 只是一个提醒.
删除当前目录下所有没有track过的文件. 他不会删除.gitignore文件里面指定的文件夹和文件, 不管这些文件有没有被track过.
删除指定路径下的没有被track过的文件.
删除当前目录下没有被track过的文件和文件夹.
删除当前目录下所有没有track过的文件. 不管他是否是.gitignore文件里面指定的文件夹和文件.
git clean对于刚编译过的项目也非常有用. 如, 他能轻易删除掉编译后生成的.o和.exe等文件. 这个在打包要发布一个release的时候非常有用.
运行后, 工作目录和缓存区回到最近一次commit时候一摸一样的状态, git status会告诉你这是一个干净的工作目录, 又是一个新的开始了.
git clean经常和git reset --hard一起结合使用. 记住reset只影响被track过的文件, 所以需要clean来删除没有track过的文件. 结合使用这两个命令能让你的工作目录完全回到一个指定的<commit>的状态.
用法
git clean -n
是一次clean的演习, 告诉你哪些文件会被删除. 记住他不会真正的删除文件, 只是一个提醒.
git clean -f
删除当前目录下所有没有track过的文件. 他不会删除.gitignore文件里面指定的文件夹和文件, 不管这些文件有没有被track过.
git clean -f <path>
删除指定路径下的没有被track过的文件.
git clean -df
删除当前目录下没有被track过的文件和文件夹.
git clean -xf
删除当前目录下所有没有track过的文件. 不管他是否是.gitignore文件里面指定的文件夹和文件.
讨论
git reset --hard和git clean -f是一对好基友. 结合使用他们能让你的工作目录完全回退到最近一次commit的时候.git clean对于刚编译过的项目也非常有用. 如, 他能轻易删除掉编译后生成的.o和.exe等文件. 这个在打包要发布一个release的时候非常有用.
例子
下面的例子要删除所有工作目录下面的修改, 包括新添加的文件. 假设你已经提交了一些快照了, 而且做了一些新的开发.git reset --hard git clean -df
运行后, 工作目录和缓存区回到最近一次commit时候一摸一样的状态, git status会告诉你这是一个干净的工作目录, 又是一个新的开始了.
相关文章推荐
- 红黑树的经典讲解
- SubVersion服务安装设置
- 本周汇总
- SAP HANA中调试存储过程
- MongoDB删除数据库
- 关于web自动化测试的一些自己的思考和总结
- angular.js[2]
- Android Studio 小技巧合集
- MongoDB创建数据库
- Html5 添加class 浏览器不支持问题
- Pycharm显示行号,修改字号大小
- snat的理解和回流的理解(内网可以访问外网地址)
- eclipse编写MapReduce程序依赖的JAR包
- 第十周练习 继承机制阅读程序
- jquery导航切换
- Shader效果算法剖析笔记(一)
- 史上最完整的Android开发工具集合
- mysql安装与配置
- JavaScript js闭包所用的场合以及优缺点
- MongoDB权限设置