您好,欢迎光临本网站![请登录][注册会员]  
文件名称: git使用说明(中文版)
  所属分类: 系统集成
  开发工具:
  文件大小: 4mb
  下载次数: 0
  上传时间: 2013-02-01
  提 供 者: min***
 详细说明: 目录 1 起步 1.1 1.2 1.3 1.4 1.5 2 Git 基础 11 2.1 取得项目的Git仓库 ................................ 11 2.1.1 从当前目录初始化 .............................. 11 2.1.2 从现有仓库克隆 ............................... 12 2.2 记录每次更新到仓库................................. 12 2.2.1 检查当前文件状态 .............................. 12 2.2.2跟踪新文件 ................................. 13 2.2.3 暂存已修改文件 ............................... 14 2.2.4 忽略某些文件 ................................ 15 2.2.5 查看已暂存和未暂存的更新 .......................... 16 2.2.6提交更新 .................................. 18 关于版 本控制.................................... 1 1.1.1 本地版本控制系统 .............................. 1 1.1.2 集中化的版本控制系统 ............................ 1 1.1.3 分布式版本控制系统 ............................. 2 Git的历史..................................... 3 Git基础要点.................................... 3 1.3.1 直接快照,而非比较差异 ........................... 4 1.3.2 近乎所有操作都可本地执行 .......................... 4 1.3.3 时刻保持数据完整性 ............................. 5 1.3.4 多数操作仅添加数据 ............................. 5 1.3.5三种状态 .................................. 5 安装Git...................................... 6 1.4.1 从源代码安装 ................................ 6 1.4.2 在Linux上安装 ............................... 7 1.4.3在Mac上安装................................ 7 1.4.4 在Windows上安装 .............................. 7 初次运行Git前的配置 ............................... 8 1.5.1用户信息 .................................. 9 1.5.2文本编辑器 ................................. 9 1.5.3 差异分析工具 ................................ 9 1.5.4 查看配置信息 ................................ 9 获取帮助...................................... 10 1.6 1.7小结........................................ 10 iii 1 2.2.7 跳过使用暂存区域 .............................. 19 2.2.8移除文件 .................................. 19 2.2.9移动文件 .................................. 21 2.3 查看提交历史.................................... 21 2.3.1 限制输出长度 ................................ 25 2.3.2 使用图形化工具查阅提交历史 ......................... 26 2.4 撤消操作...................................... 26 2.4.1 修改最后一次提交 .............................. 26 2.4.2 取消已经暂存的文件 ............................. 27 2.4.3 取消对文件的修改 .............................. 28 2.5 远程仓库的使用................................... 29 2.5.1 查看当前的远程库 .............................. 29 2.5.2 添加远程仓库 ................................ 30 2.5.3 从远程仓库抓取数据 ............................. 30 2.5.4 推送数据到远程仓库 ............................. 31 2.5.5 查看远程仓库信息 .............................. 31 2.5.6 远程仓库的删除和重命名 ........................... 32 2.6 打标签....................................... 32 2.6.1 列显已有的标签 ............................... 33 2.6.2新建标签 .................................. 33 2.6.3 含附注的标签 ................................ 33 2.6.4签署标签 .................................. 34 2.6.5轻量级标签 ................................. 34 2.6.6验证标签 .................................. 35 2.6.7 后期加注标签 ................................ 35 2.6.8分享标签 .................................. 36 2.7 技巧和窍门..................................... 37 2.7.1自动完成 .................................. 37 2.7.2 Git命令别名 ................................ 38 2.8小结........................................ 39 3 Git 分支 41 3.1 何谓分支...................................... 41 3.2 基本的分支与合并.................................. 45 3.2.1基本分支 .................................. 46 3.2.2基本合并 .................................. 48 3.2.3冲突的合并 ................................. 50 3.3 分支管理...................................... 52 3.4 分支式工作流程................................... 53 3.4.1长期分支 .................................. 53 3.4.2特性分支 .................................. 53 3.5 远程分支...................................... 55 3.5.1推送 .................................... 56 3.5.2跟踪分支 .................................. 58 3.5.3 删除远程分支 ................................ 59 3.6衍合........................................ 59 iv 3.6.1衍合基础 .................................. 59 3.6.2 更多有趣的衍合 ............................... 61 3.6.3衍合的风险 ................................. 63 3.7小结........................................ 64 4 服务器上的 Git 67 4.1协议........................................ 67 4.1.1本地协议 .................................. 67 优点 .................................... 68 缺点 .................................... 68 4.1.2SSH协议 .................................. 68 优点 .................................... 69 缺点 .................................... 69 4.1.3Git协议 .................................. 69 优点 .................................... 69 缺点 .................................... 69 4.1.4 HTTP/S协议 ................................. 69 优点 .................................... 70 缺点 .................................... 70 4.2 在服务器部署Git.................................. 70 4.2.1 将纯目录转移到服务器 ............................ 71 4.2.2小型安装 .................................. 72 SSH连接 .................................. 72 4.3 生成SSH公钥 ................................... 72 4.4 架设服务器..................................... 73 4.5 公共访问...................................... 75 4.6 网页界面GitWeb .................................. 76 4.7 权限管理器Gitosis................................. 78 4.8 Git进程...................................... 81 4.9 Git托管服务.................................... 83 4.9.1 GitHub ................................... 83 4.9.2建立账户 .................................. 83 4.9.3建立新仓库 ................................. 85 4.9.4 从Subversion中导入项目 .......................... 87 4.9.5开始合作 .................................. 87 4.9.6项目页面 .................................. 88 4.9.7 派生(forking)项目 ............................. 90 4.9.8 GitHub小节 ................................. 90 4.10小节........................................ 90 5 分布式 Git 93 5.1 分布式工作流程................................... 93 5.1.1 集中式工作流 ................................ 93 5.1.2 集成管理员工作流 .............................. 94 5.1.3 司令官与副官工作流 ............................. 94 5.2 为项目作贡献.................................... 95 v 5.2.1提交指南 .................................. 96 5.2.2 私有的小型团队 ............................... 97 5.2.3 私有团队间协作 ............................... 102 5.2.4 公开的小型项目 ............................... 106 5.2.5 公开的大型项目 ............................... 110 5.2.6小结 ....................................112 5.3 项目的管理..................................... 112 5.3.1 使用特性分支进行工作 ............................ 112 5.3.2 采纳来自邮件的补丁 ............................. 112 使用apply命令应用补丁 ........................... 113 使用am命令应用补丁 ............................ 113 5.3.3 检出远程分支 ................................ 115 5.3.4 决断代码取舍 ................................ 116 5.3.5 代码集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 合并流程 ..................................117 大项目的合并流程 .............................. 119 衍合与挑拣(cherry-pick)的流程 ....................... 120 5.3.6 给发行版签名 ................................ 121 5.3.7 生成内部版本号 ............................... 122 5.3.8 准备发布 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 5.3.9 制作简报 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 5.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 6 Git 工具 125 6.1 修订版本(Revision)选择.............................. 125 6.1.1 单个修订版本 ................................ 125 6.1.2 简短的SHA .................................. 125 6.1.3 关于SHA-1的简短说明 ............................ 126 6.1.4 分支引用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 6.1.5 引用日志里的简称 .............................. 127 6.1.6 祖先引用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 6.1.7 提交范围 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 双点 ....................................130 多点 ....................................130 三点 ....................................131 6.2 交互式暂存..................................... 131 6.2.1 暂存和撤回文件 ............................... 132 6.2.2 暂存补丁 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 6.3 储藏(Stashing).................................. 135 6.3.1 储藏你的工作 ................................ 135 6.3.2 从储藏中创建分支 .............................. 137 6.4 重写历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 6.4.1 改变最近一次提交 .............................. 138 6.4.2 修改多个提交说明 .............................. 138 6.4.3 重排提交 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 6.4.4 压制(Squashing)提交 ............................. 140 vi 6.4.5拆分提交 ..................................141 6.4.6 核弹级选项: filter-branch . . . . . . . . . . . . . . . . . . . . . . . . . . 142 从所有提交中删除一个文件 .......................... 142 将一个子目录设置为新的根目录 ........................ 142 全局性地更换电子邮件地址 .......................... 143 6.5 使用Git调试 ................................... 143 6.5.1文件标注 ..................................143 6.5.2二分查找 ..................................144 6.6 子模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6.6.1 子模块初步 ................................. 146 6.6.2 克隆一个带子模块的项目 ........................... 148 6.6.3上层项目 ..................................150 6.6.4 子模块的问题 ................................ 150 6.7 子树合并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 6.8 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 7 自定义 Git 155 7.1 配置 Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 7.1.1 客户端基本配置 ............................... 155 core.editor ................................. 156 commit.template ............................... 156 core.pager ................................. 157 user.signingkey ............................... 157 core.excludesfile .............................. 157 help.autocorrect .............................. 157 7.1.2 Git中的着色 ................................. 157 color.ui .................................. 158 color.*.................................... 158 7.1.3 外部的合并与比较工具 ............................ 158 7.1.4 格式化与空白 ................................ 161 core.autocrlf ................................ 161 core.whitespace ............................... 161 7.1.5 服务器端配置 ................................ 162 receive.fsckObjects ............................. 162 receive.denyNonFastForwards ......................... 162 receive.denyDeletes ............................. 163 7.2 Git属性 ...................................... 163 7.2.1 二进制文件 ................................. 163 识别二进制文件 ............................... 163 比较二进制文件 ............................... 164 7.2.2 关键字扩展 ................................. 165 7.2.3导出仓库 ..................................167 export-ignore ................................ 168 export-subst ................................ 168 7.2.4合并策略 ..................................168 7.3 Git挂钩 ...................................... 169 vii 7.3.1 安装一个挂钩 ................................ 169 7.3.2 客户端挂钩 ................................. 169 提交工作流挂钩 ............................... 169 E-mail工作流挂钩 .............................. 169 其他客户端挂钩 ............................... 170 7.3.3 服务器端挂钩 ................................ 170 pre-receive和post-receive ......................... 170 update ................................... 170 7.4 AnExampleGit-EnforcedPolicy........................... 171 7.4.1 Server-SideHook .............................. 171 EnforcingaSpecificCommit-MessageFormat ................. 171 EnforcingaUser-BasedACLSystem ...................... 173 EnforcingFast-Forward-OnlyPushes ..................... 175 7.4.2 Client-SideHooks .............................. 176 7.5 Summary ...................................... 180 8 Git 与其他系统 181 8.1 Git与Subversion ................................. 181 8.1.1 git svn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 8.1.2 初始设定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 8.1.3入门 ....................................182 8.1.4 提交到Subversion .............................. 184 8.1.5 拉取最新进展 ................................ 185 8.1.6 Git分支问题 ................................ 186 8.1.7 Subversion分支 ............................... 187 创建新的SVN分支 .............................. 187 8.1.8 切换当前分支 ................................ 187 8.1.9 对应Subversion的命令 ........................... 188 SVN风格的历史 ............................... 188 SVN 日志 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 SVN服务器信息 ............................... 189 略Subversion之所略 ............................ 189 8.1.10Git-Svn总结 ................................ 190 8.2 迁移到Git..................................... 190 8.2.1导入 ....................................190 8.2.2 Subversion ................................. 190 8.2.3 Perforce .................................. 192 8.2.4 自定导入脚本 ................................ 193 8.3 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 9 Git 内部原理 199 9.1 底层命令(Plumbing)和高层命令(Porcelain)..................... 199 9.2 Git 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 9.2.1 tree(树)对象 ............................... 202 9.2.2 commit(提交)对象 ............................. 204 9.2.3 对象存储 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 viii 9.3 GitReferences................................... 207 9.3.1 HEAD标记 .................................. 208 9.3.2Tags ....................................210 9.3.3 Remotes ................................... 211 9.4 Packfiles ..................................... 211 9.5 TheRefspec .................................... 214 9.5.1 推送Refspec ................................ 216 9.5.2删除引用 ..................................216 9.6 传输协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 9.6.1哑协议 ...................................216 9.6.2智能协议 ..................................219 上传数据 ..................................219 下载数据 ..................................219 9.7 维护及数据恢复................................... 220 9.7.1维护 ....................................221 9.7.2数据恢复 ..................................221 9.7.3移除对象 ..................................223 9.8 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: git使用说明 (中文版)
 输入关键字,在本站1000多万海量源码库中尽情搜索: