有识

个人网 | 追寻一切真知灼见

用户工具

站点工具


侧边栏

博主公告

想读书,想旅游,想运动,但是没有时间?其实我们不是没有时间,只是没有真正把想做的事情,放在重要的位置上,或者干脆没时间搞清楚到底那件事情对你来说更重要。^_^ 欢迎大家收看《程序员带你学打羽毛球》 和博主一起加入运动的行列。 ease 11:53 - 08月02日




最新博文》更多博文

分类索引

博主简介
吕某某 Leo
河北人,网名:ease
资深IT菜鸟,创业者
兴趣爱好:
人工智能,运动,读书,coding
人生格言:
命由己造 相由心生 有容乃大 无欲则刚 》博主管理》关于博主


blog:ease:git:git-basic12

git 工具 储藏与清理

储藏

git stash
暂时保存 非提交。也不是git add.

  • git stash 会保存 工作目录的当前状态。
  • 更新HEAD到最近提交。
  • 工作目录变为“干净状态”(也就是同步于最近提交)
  • 因此我们可以进行分支切换(干净的变换工作目录)

(否则就必须要提交未完成的“脏内容”,额外增加一个无意义的提交) 比如你正在开发你的代码,代码尚处于错误或者未完成状态。这时同事想让你看一下他的代码。

git stash list 查看 stash 列表

stash apply 恢复暂存的修改

另外注意:stash apply 默认恢复工作目录之前的修改。但是不会应用 “暂存” 也就是之前保存时那些暂存状态的文件,将会变为修改未暂存。 如果想回复暂存区 需要加上 index 参数,如下:
git stash apply –index

git stash drop 用来删除一个存储。

git stash pop 最常用 应用 stash 并且立即 删除他。

stash 条件 && 冲突

注意:恢复暂存的条件应该是:当前分支为,暂存匹配的分支 切 当前分支为干净状态。。但这并不是必要条件。 如果在 非 匹配分支应用暂存。依然可以,但类似合并文件,可能造成文件的冲突。

清理

不是储存,而是移除某些不需要的文件。比如:

  1. 从其他地方拷贝过来的文件,(未跟踪的文件)
  2. 移除程序运行所产生的临时文件。否则 git add . 会暂存 随后可能加入版本库。
  3. 为了进行一次重新的构建。比如react ,或者c语言重新编译。
git clean          清理未跟踪的文件
git clean -d     清理未跟踪的文件包含目录
git clean -f      强制清理
git clean -n      -n 尝试清理  
git clean -x     未跟踪,且.gitignore 中有忽略的 比如 react 执行 npm install 的时候,要删除 node_moudules
blog/ease/git/git-basic12.txt · 最后更改: 03:42 - 09月02日 (外部编辑)