有关git的使用总结一下,留着使用
git、svn区别
使用过程
svn基本使用过程
git基本使用过程
管理模式
svn集中式管理
git分布式管理
最大特点:git可以不依赖网络做任何事情
git的分支管理
1、 分支管理图
- master:这个分支最为稳定,这个分支代表项目处于可发布的状态
- develop:作为开发的分支,平行于master分支。
- Feature branches:这种分支和我们程序员日常开发最为密切,称作功能分支。
- Release branches:这个分支用来分布新版本。
- Hotfix branches:这个分支主要为修复线上特别紧急的bug准备的。
2、 我们的管理
git使用
-
拉取项目
git clone + 地址
-
查看分支
git branch -a //查看远程和本地所有分支 git branch //查看本地所有分支
-
创建分支
git branch +分支名称
-
切换分支
git checkout +分支名称
-
切换+创建
git checkout -b 本地分支 远程分支
-
删除分支
git branch -d 本地分支名称 //删除本地分支 git push origin --delete 分支名称 //删除远程分支
-
比较两个分支
git diff a分支 b分支 //显示两个分支内容不同 git diff a分支 b分支 --stat//显示两个分支不同的目录
git log a分支 ^b分支 //比较a分支有 而b分支没有的内容
git log a分支..b分支 //查看b分支比a分支多提交了哪些内容
git log a分支...b分支 //不知道哪个分支内容多,单纯的想看有什么不同
git log --left-right a分支...b分支 //不知道哪个分支内容多,单纯的想看有什么不同,并且知道那个分支提交的
-
添加到缓存中
git add . //提交编辑和新文件,删除的文件还在暂存区 git add -u //只提交编辑和删除的文件 git add -A //全部提交 git add +文件 //提交具体的文件
-
添加备注
git commit -m "备注" git commit --amend //commit写错之后修改一下
注:我们commit如何提交 :整体以 ([分类] 备注)这种方式提交 ,一共分为三种 1、[bug] 2、[feature] 3、[other]
比如:
git commit -m "[feature]新开发认证功能"
-
拉取分支 git pull = git fetch + git merge
git pull 基本不用 git pull origin 远程分支名称:本地分支名称 //远程主机origin的分支拉取过来,与本地的分支合并 git pull origin 远程分支名称 //远程origin主机的分支拉取过来和本地的当前分支进行合并。
git fetch origin 远程分支名称:本地分支名称 //获取最新远程分支名称
git merge 本地分支名称 //merge当前本地分支
-
合并分支
git merge 分支名称 //merge某一个分支到当前分支
-
推送分支
git push origin 远程分支名称:本地分支名称 //将本地分支推送到远程分支
-
分支回退
git reset --hard HEAD^//回退到上一个版本 git reset --hard HEAD~1//回退到上一个版本,数字1表示上1个版本,2就是上两个版本 git reset --hard +版本号//回退到某个具体的版本
-
强制提交
git push -f -u origin 远程分支:本地分支 //强制提交回退后的版本
- 高级用法
1.回退
git revert HEAD //撤销最近一次提交
git revert HEAD~1 //撤销上上次的提交,注意:数字从0开始
git revert +版本号 //撤销某一次的提交
2.找回删除分支
git reflog //查看分支,再切换
3.合并某一个提交
git cherry-pick +版本号 //合并某个提交分支
4.查看分支结构
git log --graph --oneline -20 //查看前20个结构
git log --graph --oneline --all //查看所有的结构
5.暂存
git status //推送一个新的存储
git stash save "test-cmd-stash" //添加标注
git stash list //查看暂存列表
git stash pop //将缓存堆栈中的第一个stash删除,并将对应修改应用到当前的工作目录下
git stash apply +名称 //将缓存堆栈中指定的存储应用到当前的工作目录下
git stash drop +名称 //移除指定的存储
git stash clear //移除所有的存储
git stash show 比较不同之处 加上 -p 可以查看具体不同的地方
git小游戏
基本上就是这些,更多的东西,需要我们自己去探索,了解。
希望大家能提出宝贵的意见,可以给我留言,也可以发邮件到我的邮箱:namezyqyx@163.com
谢谢大家,如果你有更好的想法或文章请告知,不胜感激。