什么是git,可以比作后悔药.做错事了,可以来一颗回到从前.
(ctrl + l:清屏 )
1.安装和配置.
1.1 下载网址
https://git-scm.com/downloads
1.2 下载安装完成
cmd =>git -version 检查版本
1.3 全局配置
git config --global user.name "wangkai" //全局配置的姓名
git config --global user.name "[email protected]" //怎么联系你,你的邮箱
git config --list (或者 git config -l) //查看全局配置
2.创建仓库
什么是仓库?就是项目,其实本质就是一个文件夹或者说是一个目录.
2.1 本地创建
方法1
cd 文件名 //选择你的文件夹
git init //初始化一个仓库
ls -la //列出所有子目录
方法2
cd .. //先退出一级
git init 文件名 //直接创建该文件名的仓库
2.2 远程创建
git clone github项目地址 //拷贝项目
例 :git clone https://github.com/vuejs/vue-cli.git
git clone https://github.com/vuejs/vue-cli.git 后面可以自定义文件名
3.基本用法
git status //查看仓库状态
git add . //将所有修改添加至暂存区,那个点指当前所有修改,也可以制定文件直接写名字即可
git commit -m "说明注释" //提交修改
git log //查看版本记录,进去然后按Q键可以退出查看记录,J往下翻,K往上翻,或者回车也是往下翻
git log -p //修改的文件的详细内容,你修改了哪些内容显示出来
git log --oneline //版本节点信息只显示一行
git log --all --graph //图示全部历史记录
git checkout xxx //回到制定的历史节点,xxx指身份证号,git log 里面commit后面的那串就是独有的身份ID,通常拷贝前七位就可以了.
git checkout - //回到上一个版本,上一个节点
git tag //打印所有标签名
git show 标签名 //查看标签的信息
git checkout 标签名 //回到标签所在的提交的节点
git branch 分支名 //创建一个分支
git checkout -b 分支名 //创建并切换到该分支
git checkout 分支名 //切换分支
git merge 分支名 //合并分支到当前分支
git remote add 远程仓库名 // 添加远程仓库
git remote -v //列出所有远程仓库的详细详细(fetch是指下载地址,push是指上传地址)
git push -u 远程名 分支名 //上传代码,要上传到具体哪里
git pull //获取远程更新,拉取项目
git add . git commit -m "说明注释" //命令可以连着
4.三种状态
modified //文件已修改
staged //文件已暂存,缓冲的一个阶段
committed //文件已提交
5.标签tag (重要的节点可以添加标签标记)
git tag -a 标签名 -m "注释"
例:git tag -a v1 -m "第一章" //添加一个v1的标签
给指定节点添加标签
5.1先获取身份证号七位=>git log --oneline 粘贴
然后git tag -a v2 -m '指定添加标签' 13c885b //后面这个是制定的身份证号
git show v1 //查看标签v1的信息
git checkout v1 //回到标签v1 所在的提交的节点
6.分支(branch)
master分支 //git init 的时候会自动创建这个分支
touch yo.txt //创建yo.txt文件夹
git branch rich //创建一个名为rich的分支
git checkout rich //切换到rich分支
git log --all --oneline //查看在哪一条分支,oneline一行打印
git checkout master //回到默认的分支
git log --oneline --all --graph //图示全部历史记录
7.合并分支
git log --oneline --all --graph //图示全部历史记录
git checkout 身份号
然后git log一下,HEAD在哪就回到了哪个节点
git checkout -b 分支名 //创建并切换到该分支
git merge 分支名 //合并分支到当前分支
8.远程仓库
git remote add 远程仓库名 // 添加远程仓库
git remote //列出所有远程仓库
git remote -v //列出所有远程仓库的详细详细(fetch是指下载地址,push是指上传地址)
git push -u 远程名 分支名 //上传代码,要上传到具体哪里
git clone 仓库地址 //克隆拷贝仓库
例:git remote add wangkai https://github.com/vuejs/vue-cli.git //创建名为wangkai;地址https://github.com/vuejs/vue-cli.git的远程仓库
例: git push -u wangkai master //要上传到具体哪里
9.多人远程合作
git pull //获取远程更新,拉取项目
//有冲突的时候,先拉下来,手动解决冲突,然后在整合提交