首页 > 技术文章 > Git常用有用命令

hellokitty2 2017-10-25 19:47 原文

1.git reset --hard <commit_id>   //正真的退回到了<commit_id>状态,git记录个源码都退到那个状态了。

2.git reflog   //查看分支切换信息,git checkout + commit_id 切到某一个分支。

3.git push origin HEAD --force   //HEAD 最近一次提交,HEAD^ 上一次提交

根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:
git reset –mixed:此为默认方式(不带任何参数的git reset),它回退到某个版本,但保留源码,回退commit和index信息
git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容

4.git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态

5.git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。

二、场景

1.删错了,版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本,git checkout其实是用版本库里的版本替换工作区的版本

  $ git checkout -- test.txt

2.已经提交了不合适的修改到版本库时,想要撤销本次提交,不过前提是没有推送到远程库。HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令:

  $git reset --hard commit_id

 3.当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令:

  $ git checkout -- file

 4.当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了3,第二步按3操作.

 

 

 

 

 

 

 

待续......

 

待看:http://blog.csdn.net/u011510825/article/details/50260759

推荐阅读