git初学者之git常用命令总结

名词解释:
版本库(Repository);  stage(或者叫index)的暂存区;   工作区

1.git 创建ssh key
ssh-keygen -t rsa -C "[email protected]"

2.关于回退版本

  • 退回到某个版本

         git reset --hard HEAD^ (HEAD~100)

  • 退回之后再恢复到某个版本

         git reset --hard 3628164(版本号不用写全)

         git reset HEAD <file>可以把暂存区的修改撤销掉(unstage),重新放回工作区

  • 用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”

         git checkout -- file        (当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。把误删的文件恢复到最新版本)

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

3.关于查看历史

  • git查看提交历史

         git log
         git log --graph 命令可以看到分支合并图

  • 查看命令历史

         git reflog

4.关于分支

  • 创建dev分支,然后切换到dev分支

         git checkout -b dev origin/dev

  • 合并分支

         git merge  合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并

   git fetch  从远程主机上下拉分支

         git pull 从远程主机上下拉分支。并与本地分支合并。相当于git fetch+git merge 

  • 删除分支

         git branch -d dev
         git branch -D <name>强行删除(丢弃)一个没有被合并过的分支

  • 指定本地dev分支与远程origin/dev分支的链接

     git branch --set-upstream-to=origin/dev dev

5.关于使用stash

  • 查看暂存区列表

         git stash list

  • 栈出暂存区

    git stash pop

        git stash apply 恢复后,stash内容并不删除,你需要用git stash drop来删除;

  • 有多次stash时,恢复指定的stash

         git stash apply stash@{0}

15.关于标签

  • 打一个新标签:

   git tag <name> <commit-id>

         git tag v0.9 f52c633

  • 用-a指定标签名,-m指定说明文字:

         git tag -a v0.1 -m "version 0.1 released" 1094adb

  • 查看所有标签

        git tag

  • 查看某一个标签的信息

        git show <tagname>

  • 删除标签

        git tag -d v0.1

  •  操作远程标签

         git push origin <tagname>可以推送一个本地标签;

         git push origin --tags可以推送全部未推送过的本地标签;

         git tag -d <tagname>可以删除一个本地标签;

         git push origin :refs/tags/<tagname>可以删除一个远程标签

其他git命令

删除  git rm 

查看远程库的信息  git remote ( -v)

 

ps:若有问题,欢迎指正。

猜你喜欢

转载自www.cnblogs.com/moonlee/p/9067839.html