Git常用命令

本文是我在学完廖雪峰Git教程之后的总结,对于以后的查阅有很大帮助。

廖雪峰Git教程地址:地址

  1. 初始化Git仓库

    git init

  2. 添加文件到暂存区

    git add <file>

  3. 提交暂存区文件到git中

    git commit -m <message>

  4. 查看当前暂存区和工作区的状态

    git status

  5. 比较当前工作区文件和最早的提交记录之间的区别

    git diff <file>

    !! 暂存区的文件无法使用这个命令

  6. 查看修改历史记录

    git log

    • --abbrev-commit 表示只显示提交字符串的前几个字符
    • --pretty=oneline 单行显示
    • --graph 分支合并图
  7. 版本表达

    HEAD 表示当前版本,指向最新的提交记录

    HEAD^ 表示上一个版本

    HEAD~100 表示上100个版本

    也可以直接指定提交记录的uuid

  8. 回退版本

    git reset --hard HEAD^

    回退到上个版本,所有之前的提交记录都会“丢失”,你也可以通过commit记录再次找回

    !!请注意工作区和暂存区没有待变更的文件

  9. 查看所有对HEAD的操作

    git reflog

  10. 撤销工作区变更

git checkout — <file>

文件如果提交到暂存区,那么重置成暂存区版本,否则重置成HEAD版本

  1. 取消文件的暂存

git reset HEAD <file>

如果这个文件工作区有修改,那么执行命令之后,工作区的变更会保留

- 当然你也可以检出任意版本的记录,把HEAD替换成对应的记录ID即可,然后使用checkout命令检出到工作区

  1. 删除文件

git rm <file>

当文件在文件系统中删除后,需要执行这个命令提交一个更改,才能在git中删除

  1. 关联远程仓库

git remote add origin git@server-name:path/repo-name.git

  1. 推送到远程

git push -u origin master

  1. 克隆仓库到本地

git clone git@github.com:<user>/<repository>.git

  1. 创建分支

git checkout -b <branchName>

-b 表示新建分支

  1. 切换分支

git checkout <branchName>

-b 参数标识立即切换到新的分支

  1. 查看当前分支

git branch

  1. 合并分支

git merge <branchName>

!! 默认会进行Fast forward合并

  • --no-ff 不实用Fast forward模式合并
  1. 暂存修改

git stash

  1. 恢复并删除暂存

git stash pop

  1. 删除分支

git branch -d <branchName>

  • -D 强制删除
  1. 查看远程仓库信息

git remote

  • -v 显示更详细的信息
  1. 推送分支

git push origin <branchName>

  1. 拉取远程分支到本地

git checkout -b <localBranchName> origin/<remoteBranchName>

  1. 拉取远程代码

git pull

  1. 关联本地分支到远程

git branch --set-upstream <localBranchName> origin/<remoteBranchName>

  1. 打标签

git tag <name>

  1. 指定提交打标签

git tag <name> <commit>

  1. 查看所有标签

git tag

  1. 查看具体标签的信息

git show <tagname>

  1. 添加带有说明信息的标签

git tag -a <tagName> -m "message" <commit>

  1. 删除本地标签

git tag -d <tagName>
git push origin :refs/tags/<tagName> 删除远程标签

  1. 将标签推送到远程服务器

git push origin <tagName>

git push origin —tags

  1. 忽略提交

有些不需要提交的文件,可以添加到 .gitignore 文件中,并保存到git根目录即可

  1. 强制提交被忽略的文件

git add -f <fileName>

  1. 检查文件为何被忽略

git check-ignore -v <fileName>

推荐阅读更多精彩内容

  • 配置 首先是配置帐号信息ssh -T git@github.com # 登陆 github 修改项目中的个人信息 ...
    琯琯阅读 103评论 0 2
  • 一:Git是什么?Git是目前世界上最先进的分布式版本控制系统。二:SVN与Git的最主要的区别?SVN是集中式版...
    萧非子阅读 39评论 0 0
  • 基础命令 用户设置 初始化仓库 把文件添加到仓库 把文件提交到仓库 添加文件到Git仓库 分两步: 第一步,使用命...
    前端渣渣阅读 460评论 0 20
  • 本系列为《Git权威指南》的读书笔记,分为两个部分:Part 1 涵盖了书中第 1~3 篇共 20 章的内容,Pa...
    yestyle阅读 6,399评论 0 50
  • 鸡排作为台湾典型的小吃,以口感独到、味道香醇著称,成为了时下受欢迎的美食之一,在这样的市场发展下,鸡排加盟成为了更...
    c4cfd873be8c阅读 206评论 3 0