title: Git 版本控制管理
tags:

  • Git
    categories:
  • 工具
    date: 2019-05-20

🌞安装Git

  1. 使用Linux上的二进制发行版

    1. Debian/Ubuntu
    2. 其他发行版
  2. 获取源代码
  3. 构建和安装
  4. 在Windows上安装Git

    1. 安装Cygwin版本的Git
    2. 安装独立的Git(msysGit)

      🌞起步

  5. Git命令行

  6. Git使用快速入门

    1. 创建和初始化版本库
    2. 将文件添加到版本库中
    3. 配置提交作者
    4. 再次提交
    5. 查看提交
    6. 查看提交差异
    7. 版本库内文件的删除和重命名
    8. 创建版本库副本
  7. 配置文件
  8. 疑问

🌞基本的Git概念

  1. 基本概念

    1. 版本库
    2. Git对象类型
    3. 索引
    4. 可寻址内容名称
    5. Git追踪内容
    6. 路径名与内容
    7. 打包文件
  2. 对象库图示
  3. Git在工作时的概念

    1. 进入.git目录
    2. 对象、散列和blob
    3. 文件和树
    4. 对Git使用SHA1的一点说明
    5. 树层次结构
    6. 提交
    7. 标签

🌞文件管理和索引

  1. 关于索引的一切
  2. Git中的文件分类
  3. 使用git add
  4. 使用git commit 的一些注意事项

    1. 使用git commit —all
    2. 编写提交日志消息
  5. 使用git rm
  6. 使用git mv
  7. 追踪重命名注解
  8. .gitignore文件
  9. Git中对象模型和文件的详细视图

🌞提交

  1. 原子变更集
  2. 识别提交

    1. 绝对提交名
    2. 引用和符号引用
    3. 相对提交名
  3. 提交历史记录

    1. 查看旧提交
    2. 提交图
    3. 提交范围
  4. 查找提交

    1. 使用git bisect
    2. 使用git blame
    3. 使用Pickaxe

🌞分支

  1. 使用分支的原因
  2. 分支名
  3. 使用分支
  4. 创建分支
  5. 列出分支名
  6. 查看分支
  7. 检出分支

    1. 检出分支的一个简单例子
    2. 有未提交的更改时进行检出
    3. 合并变更到不同的分支
    4. 创建并检出新分支
    5. 分离HEAD分支
  8. 删除分支

🌞diff

  1. git diff命令的格式
  2. 简单的git diff例子
  3. git diff和提交范围
  4. 路径限制的git diff
  5. 比较SVN和Git如何产生diff

🌞合并

  1. 合并的例子

    1. 为合并做准备
    2. 合并两个分支
    3. 有冲突的合并
  2. 处理合并冲突

    1. 定位冲突的文件
    2. 检查冲突
    3. Git是如何追踪冲突的
    4. 结束解决冲突
    5. 终止或者重新启动合并分支
  3. 合并策略

    1. 退化合并
    2. 常规合并特殊提交
    3. 应用合并策略
    4. 合并驱动程序
  4. Git怎么看待合并

    1. 合并和Git的对象模型
    2. 压制合并
    3. 为什么不一个接一个地合并每个变更

🌞更改提交

  1. 关于修改历史记录的注意事项
  2. 使用git reset
  3. 使用git cherry-pick
  4. 使用git revert
  5. reset、revert和checkout
  6. 修改最新提交
  7. 变基提交

    1. 使用git rebase -i
    2. 变基与合并

🌞储藏和引用日志

  1. 储藏
  2. 引用日志

🌞远程版本库

  1. 版本库概念

    1. 裸版本库和开发版本库
    2. 版本库克隆
    3. 远程版本库
    4. 追踪分支
  2. 引用其他版本库

    1. 引用远程版本库
    2. refspec
  3. 使用远程版本库的示例

    1. 创建权威版本库
    2. 制作你自己的origin远程版本库
    3. 在版本库中进行开发
    4. 推送变更
    5. 添加新开发人员
    6. 获取版本库更新
  4. 图解远程版本库开发周期

    1. 克隆版本库
    2. 交替的历史记录
    3. 非快进推送
    4. 获取交替历史记录
    5. 合并历史记录
    6. 合并冲突
    7. 推送合并后的历史记录
  5. 远程版本库配置

    1. 使用git remote
    2. 使用git config
    3. 使用手动编辑

🌞版本库管理

🌞补丁

🌞钩子

🌞合并项目

🌞子模块最佳实践

🌞结合SVN版本库使用Git

🌞高级操作

🌞提示、技巧和技术

🌞Git和GitHub