下载此文档

git代码管理艺术.ppt


文档分类:高等教育 | 页数:约59页 举报非法文档有奖
1/59
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/59 下载此文档
文档列表 文档介绍
git代码管理艺术
*
大纲
Git
Git基础
Git操作
Git版本管理
GIT分支管理在项目中的实践
*
Git 简史
202X 年,linux项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码t log 查看提交日志
git commit –ammend 修改最后一次提交
git reset HEAD <file> 取消已暂存文件
git checkout -- <file> 取消文件修改
*
远程仓库操作
git clone <仓库地址>
git remote –v 列出所有远程仓库
git push <仓库名> <分支名> 推送本地分支更新到远程仓库
git fetch 从远程仓库获取更新
git pull 从远程仓库获取更新并merge本地分支
*
大纲
Git简介
Git基础
Git操作
GIT版本管理
GIT分支管理在项目中的实践
*
Git目录
Git一共有三个目录
工作目录(Working Directory)
暂存目录(index)
仓库(History)
*
GIT文件状态切换
git add files 把当前文件放入暂存区域。
git commit 给暂存区域生成快照并提交。
git reset -- files 用来撤销最后一次git add files,你也可以用git reset 撤销所有暂存区域文件。
git checkout -- files 把文件从暂存区域复制到工作目录,用来丢弃本地修改。
*
GIT图示
*
GIT版本
Git版本号是一个40位的SHA-1编码的字符串
例如:4dd6bd612a121b24e1877dbc632e422e305dde6c
它不像svn那样版本号是连续的,很容易从版本号看出哪个是新版本,git的版本号是不连续的
*
查看历史版本
可以通过git log 命令来查看历史版本的提交
git log的操作都是本地操作,基本都能瞬间完成,比SVN快很多,查看历史版本或进行diff比较都非常方便
也可以通过git revert操作来回退到历史版本
查看祖先引用
git log --pretty=format:'%h %s' --graph
*
*
git log
$ git log
commit 734713bc047d87bf7eac9674765ae793478c50d3
Author: Scott Chacon <******@gmail >
Date: Fri Jan 2 18:32:33 202X -0800
fixed refs handling, added gc auto, updated tests
commit d921970aadf03b3cf0e71becdaab3147ba71cdef
Merge: 1c002dd... 35cfb2b...
Author: Scott Chacon <******@gmail >
*
SHA-1
SHA-1 摘要长度是20 字节
如果地球上65 亿的人类都在编程,每
人每秒都在产生等价于整个Linux 内核历史(一百万个Git 对象)的代码,并将之提交到一个巨大的Git 仓库里面,那将花费5 年的时间才会产生足够的对象,使其拥有50% 的概率产生一次SHA-1 对象冲突。
*
查看提交范围
git log master..experiemnt
D
C
*
查看提交范围
git log origin/master..HEAD
这条命令显示任何在你当前分支上而不在远程origin 上的提交。如果你运行git push
并且的你的当前分支正在跟踪origin/master,被git log origin/master..HEAD
*
储藏
一个很实用的功能
在git切换分支的时候,他会提示你有未提交的更新,你需要commit才能切换,但可能当前代码很乱不能提交
git stash - 将未提交代码储藏
git stash apply- 取出储藏的代码
*
变更历史
git允许你修改提交历史,这个很有用,可以减少那些乱七八糟的提交弄乱git仓库
git commit -ammend
这会更改Sha-1值,不能再push之后再修改
git调试
Git有个挺有用的功能,可以找出你觉得有问题的代码在哪个版本引入的
git blame -L 32,36
*
子模块
第三方开发的库或者是你独立开发和并在多个父项目中使用的项目作为一个子模块放入git仓库
$ git submodule add git://github /chne

git代码管理艺术 来自淘豆网www.taodocs.com转载请标明出处.