首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编程小知识【git-0002】git常用操作命令-代码撤销和撤销同步

已修改,但未暂存

# 列出所有的修改

git diff

# 列出某(几)个文件的修改

git diff xx/xx.java yy/yy.java

# 撤销项目下所有的修改

git checkout

# 撤销当前文件夹下所有的修改

git checkout .

# 撤销某几个文件的修改

git checkout xx/xx.java yy/yy.java

# untracked状态,撤销新增的文件

git clean -f

# untracked状态,撤销新增的文件和文件夹

git clean -df

已暂存,未提交

已执行git add,但未执行git commit,但是用git diff已经看不到任何修改。 因为git diff检查的是工作区与暂存区之间的差异。

# 这个命令显示暂存区和本地仓库的差异

git diff --cached

# 暂存区的修改恢复到工作区

git reset

# 与git reset等价,回到已修改状态,修改的内容仍然在工作区中

git reset --soft

# 回到未修改状态,清空暂存区和工作区,等于git reset 和 git checkout 2步操作

git reset --hard

已提交,未推送

执行git commit之后,会在仓库中生成一个版本号(hash值),标志这次提交。之后任何时候,都可以借助这个hash值回退到这次提交。

# 比较2个分支之间的差异

git diff

# 查看本地仓库与本地远程仓库的差异

git diff master origin/master

# 回退与本地远程仓库一致

git reset --hard origin/master

# 回退到本地仓库上一个版本

git reset --hard HEAD^

# 回退到任意版本

git reset --hard

# 回退且回到已修改状态,修改仍保留在工作区中

git reset --soft/git reset

已推送到远程

# 强制覆盖远程分支

git push -f orgin master

# 如果之前已经用 -u 关联过,则可省略分支名

git push -f

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230615A06I9P00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券