git 的使用

有关git的使用总结一下,留着使用

git、svn区别

使用过程

svn基本使用过程


svn基本使用过程

git基本使用过程

git基本使用过程

管理模式

svn集中式管理

svn集中式管理

git分布式管理


git分布式管理

最大特点:git可以不依赖网络做任何事情

git的分支管理

1、 分支管理图


分支管理![RBGitBranch.png](https://upload-images.jianshu.io/upload_images/1680733-b3c46ade601b2c7a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
  • 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小游戏

git通关游戏1
具体使用
git通关游戏2

基本上就是这些,更多的东西,需要我们自己去探索,了解。
希望大家能提出宝贵的意见,可以给我留言,也可以发邮件到我的邮箱:namezyqyx@163.com
谢谢大家,如果你有更好的想法或文章请告知,不胜感激。