git工作过程
git add git commit git push
-------------> ---------------> ---------------->
工作区 暂存区 历史区 远程库
git checkout
<----------
git checkout HEAD
<----------------------------------
git pull
<--------------------------------------------------
配置常用命令
git --version
git config --list//查看git配置信息
git config --global user.name xdl//对git进行配置
git config --global --unset user.name xdl//删除配置
身份认证
本地git仓库与远程git仓库进行通信的时候,需要通过ssh身份认证
clone远程仓库:
https方式
需要账号和密码
ssh方式
通过对称加密密钥验证,ssh协议在终端下对git项目有优化
创建git仓库
方式一:git init
进入到一个目录 cd xdl/
git init
方式二:git clone 远程代码地址
两种方式都会生成一个.git的隐藏文件夹,存放版本记录和配置信息
开发操作命令
git status//查看代码仓库状态变化
git add xx文件
git commit -m "add xx文件"
git log //查看刚才提交的记录
git commit --amend -m "提交描述"//修改上一次的提交,追加修改
git diff xx文件//查看发生变化文件的具体变化
git blame xx文件 //追溯一个指定文件的历史修改记录
git stash //将当前修改暂存起来,将修改前的分支作为新的分支
git stash list //查看当前暂存的内容
git stash apply或者 git stash pop进行内容恢复
分支处理
git checkout -b dev //创建并主动切换到dev分支
git branch //查看所有本地分支
git branch -r //查看所有远程分支
git merger dev //合并dev分支
git branch -d dev //删除dev分支
git push origin dev//把dev分支推到远程仓库origin分支中
git分支管理的本质:
创建分支实际上是创建了一个指针指向不同的分支,切换分支都只是改变指针指向的位置
tag与branch
branch可以改变,merge
tag不可以
tag是一个快照,一个记录点,用于记录某个commit点
git tag version1 // 创建tag
git tag version0 b687b06 // 为指定的commit id创建tag
git tag // 查看tag
git tag -d version0 // 删除tag