git review (二)

本文详细介绍了 Git Stash 命令的使用方法及其对工作区和暂存区的影响,包括如何保存当前工作状态以便稍后恢复,以及如何清理不再需要的工作快照。此外,还探讨了与 stash 相关的其他 Git 命令和操作。
摘要由CSDN通过智能技术生成

git review (二)

git stash进度恢复

git stash 执行之后,在暂存区跟踪过后的文件无论在暂存区还是工作区的都会被重置掉,而没有add的文件都还存在在工作区。(据说是用了git reset --hard HEAD,但是没有跟踪在暂存区的文件没被删除啊!!)

git stash pop或者apply之后,工作区现在没有被跟踪的文件不会丢掉,好像只增加了一些文件,其它的没动。

git reset –hard HEAD 执行了下,看来untracked file都不会管啊= =、
git stash命令
git stash list
git stash pop
git stash save "message..."
git stash apply [<stash>]
git stash drop [<stash>]
git stash clear 清除所有stash

git clean 命令
git clean -nd 查看哪些文件和目录会被删除
git clean -fd 强制删除多余的目录和文件

关于git stash 做了什么

通过git diff commitID1 commitID2命令进行比较发现
多了三个提交,分别是WIP工作区的提交,index暂存区的提交,他们俩的父提交都是原来的HEAD的commit(这里叫做原基线)
原基线和暂存区差别就是git add之后跟踪的文件
原暂存区和原工作区没有差别。。这个跟书上不一样,我亲自试过,可能版本不同现在的改进了
原工作区和原基线的差别就是git add之后跟踪的文件

删除文件

git ls-files 显示版本库中的文件
git ls-files –with-tree = HEAD^
删除暂存区的文件命令
git rm filename
然后 git commit
git add -u 命令表示将本地所有改动(修改和删除)的文件都标记到暂存区。
git add -A 会将所有改动及增加的文件添加到暂存区。
恢复某个文件(举例):
git chechout HEAD~1 -- filename
改名(举例):
git mv a b

git tag 里程碑

git tag -m 'message' tag_name

git log --oneline --decorate 此处decorate可以在提交id旁边显示提交关联的引用(里程碑或者分支)。

git describe 可以查看现在的tag后的编号,可以作为版本号。

文件忽略

在想要忽略文件的目录下添加 .gitignore 文件,里面内容是忽略的文件(且只对未跟踪文件有效)
本地独享式忽略文件 .git/info/exclude来设置。
忽略语法见git权威指南**Page**129

文件归档

基于最新提交建立归档文件latest.zip
git archive -c latest.zip HEAD
只将目录src和doc建立到归档partial.zip中
git archive -c partial.tar HEAD src doc
基于里程碑v 1.0建立归档,后面会介绍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值