zoukankan      html  css  js  c++  java
  • GIT笔记汇总

    Git的存储方式:
    元空间的存储方式
    SVN存储方式:
    文档数据库存储类似于 K -V存储
    文件版本迭代 Copy
    --------------------------------------------------------------------------------
    
    GIt : 分布式管理系统
    Svn: 集中式管理系统
    每一个项目包含一个本地仓库,使用  GIT INIT 操作初始化一个GIT 仓库
    
    SVN 只有一个远程仓库
    GIT 可以每一个项目对应一个远程仓库
    --------------------------------------------------------------------------------
    GIT 常用命令
    git init {本地仓库名字}     创建一个仓库{} 可选,若不指定的话,在当前目录新建
    
    GIT 从远程库Clone项目
    
    GIT Clone [远程库地址]
    
    GIT add {filename} 将文件添加到暂存区
    
    GIT add -A  将工作区所有的文件添加至暂存区
    
    GIT rm --cached target -r  将指定目录移出暂存区 
    
    GIT commit -am "快速提交所有的文件到本地库"
    
    git commit [文件名] -m "提交备注信息"
    
    GIT Branch -avv  查看本地分支 查看本地分支和远程分支  查看本地所有分支和远程分支的对应关系
    
    GIt branch [新分支的名字]   git 基于当前分支创建分支
    
    git branch [新分支的名字] [已经存在的分支]    git 基于已经存在的分支创建分支
    
    git branch [新分支的名字] [提交的Hash码]  git 基于已经提交的新建分支
    
    git branch -d [分支名字]   git 删除分支
    
    git checkout [分支名字] git 切换分支,需要在本地库提交的情况下切换
    
    git remote [-v]   #查看远程配置 
    
    git remote add origin http:xxx.xxx  #添加远程地址
    
    git remote remove origin   #删除远程地址
    
    git push --set-upstream origin master  #上传新分支至远程
    
    git branch --track --set-upstream-to=origin/test test #将本地分支与远程建立关联
    
    
    
    
    
    GIT 底层的存储是K-V 进行存储的,基于一个文件生成Hash Key,所以一个文件重复提交的话版本也可以保持一致
    
    GIt的每一个分支都关联了一个树对象, 存储是以树状结构进行存储的 树对象 提交对象 
    
    一次提交即为当前版本的一个快照,该快照就是通过提交对像保存,其存储的内容为:一个顶级树对象、上一次提交的对像啥希、提交者用户名及邮
          	箱、提交时间戳、提交评论。
    
    一个内容对象 ==> 存储了文件内容
    一个树对像 ==> 存储了文件名及内容对像的key
    一个提交对像 ==> 存储了树对像的key 及提交评论。
    --------------------------------------------------------------------------------
    GIT引用
    
    当我们执行 git branch {branchName} 时创建了一个分支,其本质就是在git 基于指定提交创建了一个引用文件,保存在 .git
    efsheads 下。
    l  演示分支的创建
     git branch dev
     cat.git
    efsheadsdev
    git 总共 有三种类型的引用:
    1.     分支引用
    2.     远程分支引用
    3.   标签引用
    
    #查询比较两个版本
     git log master..experiment
     
    #版本提交历史网络
    git log --pretty=format:'%h %s' --graph
     
    #查看分支树
    git cat-file -p master^{tree}
    
    
    --------------------------------------------------------------------------------
    Tag 管理 
    标签也是基于提交创建的 但是创建的节点也是只读状态的
    #查看当前
    git tag
    #创建分支
    git tag <tag name> <branch name>
    #删除分支
    git tag -d <tag name>
    
    --------------------------------------------------------------------------------
    GIT 的日志
    6、日志管理
     
    #查看当前分支下所有提交日志
    git log
    #查看当前分支下所有提交日志
    git log {branch}
    # 单行显示日志
    git log --oneline
    # 比较两个版本的区别
    git log master..experiment
     
    #以图表的方式显示提交合并网络
    git log --pretty=format:'%h %s' --graph
    

      

  • 相关阅读:
    汉诺塔问题
    两个有序链表序列的合并
    数列求和
    求集合数据的均方差
    [NOIP2014] 提高组 洛谷P1328 生活大爆炸版石头剪刀布
    [NOIP2014] 普及组
    洛谷P1726 上白泽慧音
    洛谷P1808 单词分类
    洛谷P1889 士兵站队
    洛谷P1288 取数游戏II
  • 原文地址:https://www.cnblogs.com/Mzcc/p/11360609.html
Copyright © 2011-2022 走看看