git reset与checkout异同点

可以实现相同的功能,比如还原本地文件,但是reset更强调“撤销”,比如撤销暂存区、撤销暂存区和本地,而checkout更强调“替换”,比如用暂存区内容替换本地,用head指向目录替换暂存区和本地。

reset强调,撤销

git reset head - - filename 
撤销上次暂存(取消暂存区的内容,用head指向的目录(版本库)替换暂存区)
如果只删除暂存,保留工作区,可以使用git rm --cached -r filename,-r表示递归删除
git reset - -hard head: 
撤销本地和暂存区的所有变动(用head指向的目录(版本库)替换本地和暂存区)
git reset – hard origin/master 
撤销本地、暂存区、版本库(用远程服务器的origin/master替换本地、暂存区、版本库)

checkout强调,替换

git checkout [- -] filename 
- 用暂存区的内容替换工作区的文件。比如working directory修改了,但是想放弃这些修改,那么使用git checkout -- a.txt 放弃对a.txt的修改 
git checkout head filename 
- 用head指向的目录(版本库)替换暂存区和工作区的文件

head

git的命令中经常会用到head,可以将head看做一个指针,head指本地的版本库,可以将head替换为远程库,比如origin/master,origin代表一个地址,master是分支。

origin

- origin代表远程仓库的地址 ,在config文件中


原文:https://blog.csdn.net/wangjun5159/article/details/51397475 
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值