git 常用操作

来源:互联网 发布:unity3d 合并模型 编辑:程序博客网 时间:2024/06/05 23:58

6. 撤销改动
7. 删除一个commit
8. 修改最近的一个commit
9.显示所做的改动
9.显示所做的改动
  1)git diff
  2)git annotate/blame



转载来源 http://blog.csdn.net/richardysteven/article/details/5956854


//---------------------------------------------------------------

6. 撤销改动

git checkout -- file.1

撤销了file.1的这次改动。只是撤销了没有staged的改动.

中间的 -- 表明了这是一个文件 而不是一个branch的名字


git reset --hard HEAD

撤销了所有没有commit的改动,包括了stage的和没有stage的。

这条命令的结果一样

git checkout HEAD file.1

包括了staged 和没有staged的都会清除。


有时候我们发现,之前做个一个commit有问题,不想要,想要去掉。

git revert HEAD      自动得重新做一个commit,将最后一次的commit返回回来。

git revert HEAD^     自动得重新做一个commit,将最后第二次的commit 返回回来。

7. 删除一个commit

git reset --hard HEAD~1

删除了最近的commit


8. 修改最近的一个commit

git commit --amend
 


9.显示所做的改动
  1)git diff
    git diff
    显示所有的改动。 没有add到index中的。
    

    git diff --staged或者 git diff --cached
    显示staged改动,也就是add的东东,也就是将要commit的东东。
    

    git diff commit1 commit2
    显示这两个commit之间的变动, 从commit1到commit2的变动。


    git diff commit1..commit2
    两个点,效果跟上面的一样


    git diff commit1...commit2
    三个点,表示的是发生在commit2分支,一直到commit1和commit2共同父亲的变化。

  2)git annotate/blame
    git blame -C file1.c
    显示文件具体的改动。。。。恩,好像是用来找是谁的错?


    git blame -Ln,m file1.c
    查看n,m两行间的改动。


    git blame commit1~1 -Ln,m file1.c
    查看commit1版本前的改动. 追查之前的log。


    git blame commit1~1 -Ln,m -- old/file.c
    如果这个文件被重命名过,或者移动过位置,就要输入旧的文件的名字。

    而且一定要加上 -- , 一定。

0 0
原创粉丝点击