我们平时使用的Git命令

就算你是使用客户端或者说是在IDE中提交版本,git的命令也是需要被你了解。
在git-bash中操作git,你会越来越喜欢上采用命令的方式去管理。
以下是我总结出平时中常用的git命令

Git

Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro)

Git仓库可以分为本地仓库和远程仓库。
而且在仓库中又可以创建分支进行功能模块的开发,一个分支的操作不会影响另一个分支的管理。

Git的常用命令

Git 版本提交的相关命令

差异比较

查看本地修改与服务器的差异

git status

我们平时使用的Git命令_第1张图片
差异比较

差异比较可以在各个阶段都可以执行,查看git版本库的一个差异问题。并且 可以查看是哪个分支中工作。由于以上是还没有提交过,master分支(主分支)并没有被创建

文件添加到暂存区

比较差异后,可以对差异的文件进行添加到暂存区。
两种添加方式:

  • 部分添加,两个文件之间使用空格分开
git add a.txt b.txt
我们平时使用的Git命令_第2张图片
将差异文件添加到暂存区中
  • 将所有差异文件都添加
git add .
提交到本地版本库
git commit –m "first add"
查看分支
git branch
新增分支
git branch know_20180120_branch
切换分支

切换分支为know_20180120_branch

git checkout know_20180120_branch

我们平时使用的Git命令_第3张图片
切换分支

如图,在切换分支后, git status会告诉你是哪个分支工作,并且告诉你工作空间的状况

新增并切换分支

以上两步操作可以直接合并为一个命令来操作。

git checkout  -b knowGit_20180120_branch

新增分支后,你可以在不同的分支中进行操作,每个分支都不会影响另一个分支的管理


我们平时使用的Git命令_第4张图片
不同分支
获取内容

从远程Git仓库获取到最新的内容

git pull
合并分支

将分支合并到主分支中(先切换到主分支中)

git checkout master
git merge knowGit_20180120_branch
我们平时使用的Git命令_第5张图片
合并分支
同步远程仓库

将本地仓库的信息同步到远程仓库中

git push origin master
版本回退

Git的命令详解

了解工作区和暂缓区

我们平时使用的Git命令_第6张图片
图解

git add:将需要添加到差异内容添加到stage(暂缓区)中
git commit:将暂缓区的内容提交到本地分支中(图中的分支为master)
工作区显示的内容为分支的内容。

git status
  • git status []:了解(该文件)当前分支的状态
git init

git init命令可以把一个工作目录编程版本管理的仓库。执行该命令后,会在目录中多了一个.git文件,该文件保存了版本管理的信息,例如分支的相关信息

我们平时使用的Git命令_第7张图片
分支信息

git clone
  • git clone :将远程仓库的项目拷贝到当前目录中
git branch
  • git branch:查看本地分支
  • git branch -r:查看远程分支
  • git branch :新建分支branch
  • git branch -d :删除分支branch,branch是已合并的分支
  • git branch -D :删除分支branch,branch是未合并的分支
git checkout
  • git checkout :切换分支
  • git checkout -b :新建并切换分支
  • git checkout -- :丢弃该文件在工作区的修改
git add
  • git add <$file2> <...$fileN>:添加文件到暂存区中
  • git add .:将所有修改的文件(除.gitignore罗列的文件)添加到暂存区中
git commit
  • git commit -m :提交该版本的文本信息,方便查看的时候明白该版本的提交信息
  • git commit -am :等同于git add .git commit -m
git merge
  • git merge :将某个分支合并到当前分支
git push
  • git push [] []:将本地仓库内容upload到远程仓库中
git pull
  • git pull [] []:将远程仓库中的信息download到本地仓库中
git remote
  • git remote -v:查看添加的远程仓库的信息
  • git remote add :添加远程仓库的地址
  • git remote rm :删除远程仓库
  • git remote set-url --push :修改远程仓库的地址
git tag

标签一般用于一个版本的表示,例如v1、v1.0.0

  • git tag:查看标签
  • git tag -r:查看远程标签
  • git tag :添加标签
  • git tag -d :删除标签
git stash

将当前未提交的工作存入Git工作栈中

  • git stash list:罗列工作栈的信息
  • git stash push:加入工作栈中
  • git stash pop:出栈某个工作区
  • git stash apply $stash:应用某个工作区
  • git stash drop $stash:删除某个工作区
git log

获取到仓库提交的版本历史

  • git log [--pretty=oneline] [--abbrev-commit]--pretty=oneline可以将版本历史一行化输出,--abbrev-commit为简写commitId,为commitId的前几位数字
    版本历史

    最左边的信息为版本id,可以用于回退的标识,HEAD为当前版本
git revert
git config
  • git config --list:获取git的配置信息
  • git config --global user.name :配置用户的名称
  • git config --global user.email :配置用户的邮箱
git rebase
git rm
  • git rm -f :从工作区删除文件
  • git rm --cached :从暂存区中删除索引文件
git diff
  • git diff HEAD -- :查看某个文件工作区和版本库里面最新版本之间的差异
  • git diff []:比较(该文件)工作区和暂存区的差异,即执行git add命令前后文件修改的差异比较
  • git diff --cached []:比较(该文件)暂存区和分支的差异,即比较git commit命令前后文件修改的差异比较
git reflog
  • git reflog:用于记录每次执行的操作日志
git reset

执行该命令前,可以通过git log命令或者git reflog命令来获取版本id

  • git reset --hard :回退到指定的版本,commitId可以为简写版本id
  • git reset --hard HEAD^:回退到上个版本,^的数量表示回退版本的数量

refer to:

Git bash常用命令
廖雪峰Git教程
Git常用命令

你可能感兴趣的:(我们平时使用的Git命令)