玖叶教程网

前端编程开发入门

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 --soft 
# 回到未修改状态,清空暂存区和工作区,等于git reset 和 git checkout 2步操作
git reset --hard 
# 与git reset等价,工作区文件内容不变,并清空暂存区
git reset --mixed

已提交,未推送

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

# 比较2个分支之间的差异
git diff <branch-name1> <branch-name2> 
# 查看本地仓库与本地远程仓库的差异
git diff master origin/master 
# 回退与本地远程仓库一致
git reset --hard origin/master 
# 回退到本地仓库上一个版本
git reset --hard HEAD^ 
# 回退到任意版本
git reset --hard <hash code> 
# 回退且回到已修改状态,修改仍保留在工作区中
git reset --soft/git reset 

已推送到远程

# 强制覆盖远程分支
git push -f orgin master 
# 如果之前已经用 -u 关联过,则可省略分支名
git push -f 



发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言