git 常用命令讲解

来源:互联网 发布:南京美食 知乎 编辑:程序博客网 时间:2024/05/22 07:42

git 常用命令讲解

文件的几种状态

  • 已提交(commited/unmodified),已被保存在本地
  • 已修改(modified),已修改,未保存
  • 已暂存(staged),下次提交将保存
  • 未跟踪(untracked),新建文件为未跟踪
    这里写图片描述

git 基础命令

  • git config –global user.name “your name”
  • git config –global user.email “your email”
  • git clone 从远程克隆代码
  • git add files将文件加入到暂存区
  • git status 查看工作区文件状态
  • git commit 提交暂存区文件
  • git commit –amend 撤销上一次的提交
  • git show id 查看某次修改的内容
  • git diff file 查看当前文件和暂存区文件差异
  • git diff –staged 比较暂存区和版本库差异
  • git diff id1 id2 查看某2次提交的差异
  • git log 查看提交记录
  • git log file 查看文件的提交记录
  • git log -p file查看文件提交记录差异
  • git log -p 2查看最近两次提交差异记录
  • git log –stat 查看所修改文件
  • git log –pretty=oneline/short/full/fuller
  • git rm file 从版本库中删除文件
  • git rm –cached file 从版本库中删除跟踪,但不删除文件
  • git reset file 撤销提交,从暂存区恢复文件到unstage
  • git reset –hard 撤销提交,恢复到最近提交的一次状态,放弃修改
  • git revert $id 用于直接取消指定某一次的提交,并且会形成两个历史记录

关于分支

1、创建分支

  • git branch 分支名 创建新的分支
  • git checkout 分支名 切换到对应分支
  • git fetch origin master:tmp 获取最新的代码到tmp分支
  • git checkout -b 分支名 创建分支并切换到对应分支;相当于:git - branch + git checkout
    注:切换分支前将先前分支的修改commit

2、查看分支

  • git branch 查看本地分支
  • git branch -r 查看远程分支
  • git branch -v 查看各个分支最后一个提交对象的信息
  • git branch –merged 筛选出你已经与当前分支合并的分支
  • git branch –no-merged 筛选出尚未与当前分支合并的分支

3、合并分支

合并分支到master分支

  • git checkout master
  • git merge 需要合并的分支名

4、远程分支

  • 推送本地分支
    git push origin 分支名
  • 获取远程分支更新
    git pull origin 分支名
  • 删除远程分支
    git push origin :分支名
  • 克隆远程分支到本地分支
    git checkout -b 本地分支名 origin/远程分支名

关于标签

1、列出标签

  • git tag —–列出所有的标签
  • git tag -l ‘过滤信息’ —–列出指定条件过滤的标签
    例如:
    git tag -l ‘a*’ 代表列出以a开头的标签名对应的所有标签

2、创建标签

Git 使用两种主要类型的标签:轻量标签(lightweight)与附注标签(annotated)。
一个轻量标签很像一个不会改变的分支 - 它只是一个特定提交的引用。
然而,附注标签是存储在 Git 数据库中的一个完整对象。 它们是可以被校验的;其中包含打标签者的名字、电子邮件地址、日期时间;还有一个标签信息;并且可以使用 GNU Privacy Guard (GPG)签名与验证。 通常建议创建附注标签,这样你可以拥有以上所有信息;但是如果你只是想用一个临时的标签,或者因为某些原因不想要保存那些信息,轻量标签也是可用的。

2.1创建轻量标签

  • git tag 标签名
  • 创建附注标签
    git tag -a 标签名 -m ‘标签描述信息’
  • 后期打标签:对先前提交的某个commit进行打标签的操作
    git tag -a 标签名 -m ‘标签描述’ 对应commit的校验和(或部分校验和)

3、查看某个标签信息

git show 标签名

4、检出标签

git checkout -b [分支名] [标签名]

5、共享标签(提交标签到远程服务器)

git push origin [标签名]
git push origin –tags 提交所有不在远程仓库的标签

6、删除本地标签

git tag –d [标签名]

原创粉丝点击