前言
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
谈及到Git,不得不提起另一个伟大的工具linux,以及它们的创造者Linus大神。所以linux的很多命令是可以在Git中使用的。
Linux常用命令
命令 | 描述 |
---|---|
cd | 改变目录 |
cd . . | 回退到上一个目录 |
pwd | 显示当前所在的目录路径 |
ls(ll) | 都是列出当前目录中的所有文件,但ll列出的内容更加详细 |
touch | 新建一个文件(touch 文件名) |
mkdir | 新建一个目录(mkdir 目录名) |
rm -r | 删除一个文件夹(rm -r 目录名) |
mv | 移动文件(mv 原位置 新位置) |
reset | 清屏 |
clear | 清屏 |
history | 查看命令历史 |
help | 帮助 |
eq | 保存退出 |
q! | 不保存强制退出 |
cat | 查看文件 |
vim | 编辑文件 |
exit | 退出 |
# | 注释 |
Git介绍
版本库:.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等。
工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码;
暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方。
工作区通过git add命令提交到暂存区,再通过git commit命令提交到版本库。
Git工作区的文件状态
Git工作区的文件状态大体分为两种:
- untracked 表未被跟踪(未被纳入版本控制)
- tracked 表已跟踪(被纳入版本控制)
1)Unmodified 未修改状态 ;
2)Modified 已修改状态;
3) Staged 已暂存状态
Git命令
1、git config -l(查看配置)
# 查看系统config
git config --system --list
# 查看当前用户配置
git config --global --list
2、git init(搭建本地仓库)
执行git init命令后,目录中会出现.git目录(注意这个默认是隐藏的文件夹,需要手动在查看选项里面去掉隐藏的文件才能显示),关于版本等所有信息都在这个目录里面。
3、clone(克隆远程仓库)
此方法也可以用来创建本地仓库
git clone 链接地址
4、查看文件状态
创建一个test.txt文件测试。
#查看制定文件状态
git status [文件名]
#查看所有文件状态
git status
#添加所有文件到暂存区
git add .
#添加指定文件到暂存区
git add 文件名
#提交暂存区中的内容到本地仓库 -m:提交的信息
git commit -m "注释"
5、git分支
常用命令
#列出本地所有分支
git branch
#列出所有远程分支
git branch -r
#新建一个分支,但依然停留在当前分支
git branch 分支名
#切换到该分支
git checkout 分支名
#合并指定分支到当前分支
git merge 分支名
#删除分支
git branch -d 分支名
#删除远程分支
git push origin --delete 分支名
git branch -dr 分支名
如果同一个文件在合并分支时都被修改了则会引起冲突∶解决的办法是我们可以修改冲突文件后重新提交master
6、查看日志
查看详细的提交历史
git log
查看日志简洁信息,并且可以查到删除的commit和reset日志信息
git reflog
7、版本回退
git reset --hard 版本号
8、远程仓库
# 查看远程仓库
git remote
# 添加远程仓库
git remote add shortname
#从远程仓库克隆
git clone
# 从远程仓库拉取
git pull
#推送到远程仓库
git push