目录
git是什么
git是目前世界上最先进的分布式版本控制系统。
git的优势
1、适合分布式来发,强调个体;
2、公共服务器压力和数据量都不会太大;
3、速度快、灵活;
4、任意两个开发者之间可以很容易得解决冲突;
5、离线工作。
git能做些什么(常用的)
1、克隆版本(目前最常用的功能);
2、项目版本控制;
3、项目分支管理。
add
add主要实现将工作区修改的内容提交到暂存区
指令:git add .
commit
commit实现将暂存区的内容提交到本地仓库
指令:git commit -m ‘描述的信息’
push
push实现将本地仓库的内容提交到远程仓库
指令: git push origin 分支名
branch 展示分支,切换分支,创建分支,删除分支这四种操作
主分支: master 主分支,所有提供给用户使用的正式版本,都在这个主分支上发布。
开发分支:dev 1)供联调与合作开发;2)不能在dev开发。
功能分支:feature-login 基于master分支创建的个人功能分支
测试分支:release/test 测试分支没有问题,合并到哦master分支
修复分支: hotfix_login_captcha 修复线上代码的bug
发布版本:将测试完成的功能打tag号,供上线使用。
branch 创建分支 依然停留在当前分支
指令: git branch 分支名
新建分支,并切换到该分支
指令:git checkout 分支名
展示分支
指令:git branch
删除分支
指令:git branch -d 分支名
merge 合并分支
merge命令把不同的分支合并起来
指令:git merge 分支名
rebase 衍合 合并分支
rebase命令把不同的分支合并起来,有称为衍合
指令:git rebase 分支名
reset
reset命令把当前分支指向另一个位置,并且相应的变动工作区和暂存区
指令:git reset
只改变提交点,暂存区和工作目录的内容不改变
指令:git reet --soft 分支名
改变提交点,同时改变暂存区的内容
指令:git reset --mixed 分支名
暂存区、工作区的内容都回被修改到与提交点完全一致的状态
指令: git reset --hard 分支名
让工作区回到上次提交时的状态
指令: git reset --hard HEAD
push
上传本地仓库分支到远程仓库分支
指令: git push 分支名
revert
revert 用一个新提交来消除一个历史提交所做的任何修改
指令:git revert
revert与reset的区别
1、git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit;
2、在回滚这一操作上看,效果差不多;
3、git reset是把HEAD向后移动了一下,而git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。