zoukankan      html  css  js  c++  java
  • Git-1

    ——分布式版本控制

    对应的是集中的版本控制工具——SVN,需要联网。

    分布式系统与集中式系统

    • Git是分布式版本控制系统,没有中央服务器,但是SVN有。
    • 分布式系统上每个人的都是一个版本库,工作时不需要联网

    流程

    工作区——暂存区——分支

    Git用法

    初始化一个仓库

    git init

    添加文件到仓库(两步,add一次添加一个文件,添加至暂存区stage;commit一步可提交数个文件,暂存区所有添加到当前分支)

    git add file1
    git add file2
    git commit -m "添加了2个文件"

    时刻掌握仓库当前的状态(是否被修改过,仅仅是工作区前后是否被改变)

    git status

    更加精确的查询那些被修改了(-红色为旧版本 ,+绿色为新版本。提交时可将此作为额外的信息。修改前和修改之后还没有进入暂存区的内容之间的差异)

    git diff

    git diff HEAD -- file   //检查工作区和版本库最新版的差异

    Git下,总有后悔药吃

    查询提交日志

    git log --pretty=oneline

    回到过去,简单,退到上一个版本(或几个)

    git reset --hard HEAD~1
    或者
    git reset --hard HEAD^

    回到未来(当前版本的后几个版本,借助版本号)

    git reflog
    git reset --hard commid_id

    撤销修改(文件撤回到最近一次add 或者 commit的状态)

    1. 文件还没add进暂存区,工作区文件撤回至上次commit后的状态,版本库最新版的状态
    2. add进了暂存区,工作区文件撤回至上次add后的状态,和暂存区的状态一一致;
      •  git reset HEAD filename,将暂存区的修改回退到工作区,变为状态1
      • 假如已经commit到本地仓库,则采用版本回溯。
      • 若已经推到远程版本库,则GG

    git checkout -- filename

    一回生,二回熟
  • 相关阅读:
    命令模式
    装饰者模式
    迭代器模式-统一集合的遍历方式
    springboot源码解析-管中窥豹系列之总体结构
    启动项目tomcat报错
    在项目中部署redis的读写分离架构(包含节点间认证口令)
    Redis的几个核心机制底层原理
    Java内存模型
    JAVA原子组件和同步组件
    DataGrid 删除一行数据
  • 原文地址:https://www.cnblogs.com/zzytxl/p/12739458.html
Copyright © 2011-2022 走看看