Git小结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/guanjianhe/article/details/82557577
  1. 安装Git之后,请输入用户名和电子邮件地址:

    $ git config --global user.name "<用户名>"
    $ git config --global user.email "<电子邮件>"
  2. 创建一个版本库

    $ git init
  3. 添加版本库

    $ git add filename1 filename2 ...

    Tips使用git add .添加全部文件,但不能添加.gitignore,要使用命令git add .gitignore添加。

  4. 提交到版本库

    $ git commit -m "提交信息"

    Tips使用git -a -m "提交信息"命令Git就会自动把所有已经跟踪的文件暂存起来一并提交,从而跳过git add步骤

  5. 查看仓库当前状态

    git status
  6. 查看工作区暂存区里面最新版本的区别

    $ git diff filename
  7. 查看历史提交记录信息

    $ git log

    Tips$ git log --pretty=oneline简化输出信息

  8. 回退上一个版本

    $ git reset --hard HEAD^
  9. 回退指定版本

    $ git reset --hard CommitId
  10. 查看命令历史

    $ git reflog
  11. 查看工作区版本库里面最新版本的区别

    git diff HEAD -- filename
  12. 丢弃工作区的修改

    $ git checkout -- filename

    :命令git checkout -- filename意思就是,把filename文件在工作区的修改全部撤销,这里有两种情况:

    1. filename自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态
    2. filename已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态
  13. 把暂存区的修改撤销掉

    $ git reset HEAD filename
  14. 删除文件

    $ rm filename
    $ git rm filename
    $ git commit -m 'rm filename'
  15. 创建SSH Key

    $ ssh-keygen -t rsa -C "[email protected]"
  16. 关联远程仓库

    $ git remote add 远程仓库名(origin) URL
  17. 推送到远程库

    $ git push -u 远程仓库名(origin) master

    :第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令:git push 远程仓库名(origin) master

  18. 从远程仓库克隆

    $ git clone URL
  19. 创建分支

    $ git branch 分支名
  20. 切换分支

    $ git checkout 分支名

    Tips以上两条命令可以简化成一条git checkout -b 分支名,表示创建并切换分支

  21. 查看当前分支

    $ git branch

    git branch命令会列出所有分支,当前分支前面会标一个*号。

  22. 合并指定分支到当前分支

    $ git merge 分支名
  23. 删除分支

    $ git branch -d 分支名
  24. 查看分支合并情况

    $ git log --graph --pretty=oneline --abbrev-commit
  25. 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。

    如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。

    $ git merge --no-ff -m "提交信息" 分支名

    :因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。

  26. 删除一个没有被合并过的分支

    $ git branch -D 分支名
  27. 查看远程库详细信息

    $ git remote -v

    查看远程库精简信息,用git remote

  28. 本地创建和远程分支对应的分支

    $ git checkout -b branch-name origin/branch-name
  29. 建立本地分支和远程分支的关联

    $ git branch --set-upstream branch-name origin/branch-name
  30. 创建标签

    $ git tag 标签名
  31. 在历史提交中打标签

    $ git tag 标签名 commitid
  32. 查看标签

    $ git tag
  33. 查看指定标签信息

    $ git show 标签名
  34. 创建带有说明的标签

    $ git tag -a 标签名 -m "标签信息" commitid
  35. 删除标签

    $ git tag -d 标签名
  36. 推送某个标签到远程

    $ git push origin <tagname>

    :创建的标签都只存储在本地,不会自动推送到远程

  37. 一次性推送全部尚未推送到远程的本地标签

    $ git push origin --tags
  38. 删除远程标签

    $ git tag -d 标签名                   #先从本地删除
    $ git push origin :refs/tags/标签名   #再删除远程
  39. 解除远程关联仓库

    git remote rm 远程仓库名
  40. 远程仓库重命名

    $ git remote rename oldname newname
  41. 配置别名

    $ git config --global alias.st status  #st==status
  42. 查看配置信息

    $ git config --list

猜你喜欢

转载自blog.csdn.net/guanjianhe/article/details/82557577