git常用命令整理

2017-10-19  本文已影响0人  小鱼的大白话

git是发布式版本控制,它没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,工作的时,不需要联网,多方协作时,只需把各自的修改推送到远程就可以了,但是通常也有一台充当“中央服务器”的电脑,它方便“交换”大家的修改;并且和集中式版本控制(cvs/svn)系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了,再也不用担心代码丢失或损坏了!

接下来让我看看有哪些常用命令以及它们之间的区别:

git clone XXX 克隆一个版本库
git remote -v 查看远程库相关信息(有push表示有推送权限)
1BEC0A3F-B214-4F62-AF78-71FF2237DA9C.png

常用基本操作:

git checkout -b 分支名   新建分支并切换 (利用指针的指向来控制分支使用的)
(等同于 git br xxx + git checkout 分支名)
  
git pull origin 分支名   拉取分支内容
git status              查看修改
git add .               添加修改到暂存区
git commit -m '注释'     暂存区内容提交到当前分支(可多次add一次commit)
git push origin 分支名   将分支推送到远程

1、代码回退:
没有add,代码停留在工作区:

git checkout xxx/-- xxx 撤销某个文件的修改(xxx如果是分支名称,则会切换分支,这时撤销可使用-- xxx来执行)

操作add后,代码进入暂存区:

git reset HEAD xxx 清理暂存区对应文件

操作commit后,代码已合并到本地分支:

git log     查看提交日志(从近到远的依次显示)
git reset --hard +commit iD(可以只写前几位,git会自动查询) 回退到指定版本
git reflog  查看命令历史,记录每一次命令(包括回退)

2、代码差异比较:

1. git diff               工作区和暂存区比较
2. git diff --cached      暂存区和分支内容比较
3. git diff HEAD (-- xxx) 工作区和分支内容比较(具体比较某个文件)

3、代码暂存:(若代码需要临时保存,不想commit提交,可以使用stash)

git stash      将当前内容暂存
git stash list 查看暂存列表
git stash pop  恢复暂存内容并删除(等同:git stash apply + git stash drop)

4、删除分支:

git br -d xxx 
git br -D xxx 强制删除

5、.gitignore文件配置
有些时候,Git工作目录存在的文件(例如数据库相关配置文件)不能或者不想提交(例如node_modules),这时候你就可以在.gitignore中配置

478A5CF3-2E12-4AB8-AD81-1863ECB81BB3.png

6、别名配置
想将git status变成git st吗?单词缩写是不是方便了记忆,并且使用上更容易呢?那接下来我们就看看,如何配置git的别名吧!

 git config --global alias.st status
1D446E15-605D-4028-A373-54503209F92C.png

Q:为什么要加--global?
A: 配置Git的时候,加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。

Q: 如何修改别名?
A: 可以找到配置文件,直接编辑,保存后方可使用

Q: 配置文件在存放在哪里?
A: 每个仓库的Git配置文件都放在.git/config文件中,而当前用户的Git配置文件在用户主目录下的一个隐藏文件.gitconfig中

7E65B982-CEB1-4AC6-8F0E-1C3E01C59978.png

戳我,查看廖雪峰老师关于git的讲解,真的炒鸡详细

上一篇 下一篇

猜你喜欢

热点阅读