问题: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
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐