git重置、回退、暂存
git重置、回退、暂存
·
问题:git 本地与远程处理指令
有时候本地修改代码后,但需要拉去线上的代码时,以及出现需要回退的情况,记录一下可用指令。
1、restore 重置:修改了代码,并未执行 git add 操作
- 重置所有文件
git restore .
- 重置个别文件,指定文件路径即可
git restore <文件>...
注意:如果已经执行了 git add 操作,此时代码已保存至暂存区,需要先取消暂存区变更:
git restore --staged .
或者
git reset .
然后,再执行 git pull 拉取远程代码同步即可。
2、reset 回退
直接回退代码,回退后不可恢复
git fetch --all
git reset --hard origin/master
git pull // 这一步为了同步远程代码,不需要的话可不执行
git fetch 指令是下载远程仓库最新内容,不做合并。
git reset 指令把HEAD指向master最新版本。
reset --hard:重置后不保留暂存区和工作区
reset --soft:保留工作区,并把重置 HEAD 所带来的新的差异放进暂存区(此时代码的变更状态相当于执行完 git add命令)
reset --mixed:reset的默认参数,保留工作目录,并重置暂存区(此时代码的变更状态相当于执行 git add命令之前)
3、stash 暂存(推荐)
将所有代码添加至暂存区:
git add .
将代码临时保存:
git stash
将代码恢复至工作区:
git stash pop
更多推荐
已为社区贡献1条内容
所有评论(0)