git日常开发功能手册

git日常开发功能手册

ID:1355730

大小:1.53 MB

页数:40页

时间:2017-11-10

git日常开发功能手册_第1页
git日常开发功能手册_第2页
git日常开发功能手册_第3页
git日常开发功能手册_第4页
git日常开发功能手册_第5页
资源描述:

《git日常开发功能手册》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、APM组件建设规划GIT日常开发功能培训1达成目标l了解GIT背景lGIT客户端程序安装及常用功能lGIT命令行常用操作lGIT分支常用操作lGIT冲突处理l总结2GIT简介2.1GIT介绍Git是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。2.2GIT和SVN优缺点分析2.2.1直接记录快照,而非差异比较Git和其它版本控制系统(包括Subversion和近似工具)的主要差别在于Git对待数据的方法。概念上来区分,其它大部分系统以文件变更列表的方式APM组件建设规

2、划存储信息。这类系统(CVS、Subversion、Perforce、Bazaar等等)将它们保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异。Figure1-4. 存储每个文件与初始版本的差异.Git不按照以上方式对待或保存数据。反之,Git更像是把数据看作是对小型文件系统的一组快照。每次你提交更新,或在Git中保存项目状态时,它主要对当时的全部文件制作一个快照并保存这个快照的索引。为了高效,如果文件没有修改,Git不再重新存储该文件,而是只保留一个链接指向之前存储的文件。Git对待数据更像是一个 快

3、照流。Figure1-5. 存储项目随时间改变的快照.这是Git与几乎所有其它版本控制系统的重要区别。因此Git重新考虑了以前每一代版本控制系统延续下来的诸多方面。Git更像是一个小型的文件系统,提供了许多以此为基础构建的超强工具,而不只是一个简单的VCS。稍后我们在Git分支讨论Git分支管理时,将探究这种方式对待数据所能获得的益处。APM组件建设规划1.1.1近乎所有操作都是本地执行在Git中的绝大多数操作都只需要访问本地文件和资源,一般不需要来自网络上其它计算机的信息。如果你习惯于所有操作都有网络延时开销的

4、集中式版本控制系统,Git在这方面会让你感到速度之神赐给了Git超凡的能量。因为你在本地磁盘上就有项目的完整历史,所以大部分操作看起来瞬间完成。举个例子,要浏览项目的历史,Git不需外连到服务器去获取历史,然后再显示出来——它只需直接从本地数据库中读取。你能立即看到项目历史。如果你想查看当前版本与一个月前的版本之间引入的修改,Git会查找到一个月前的文件做一次本地的差异计算,而不是由远程服务器处理或从远程服务器拉回旧版本文件再来本地处理。这也意味着你离线或者没有VPN时,几乎可以进行任何操作。如你在飞机或火车上想

5、做些工作,你能愉快地提交,直到有网络连接时再上传。如你回家后VPN客户端不正常,你仍能工作。使用其它系统,做到如此是不可能或很费力的。比如,用Perforce,你没有连接服务器时几乎不能做什么事;用Subversion和CVS,你能修改文件,但不能向数据库提交修改(因为你的本地数据库离线了)。这看起来不是大问题,但是你可能会惊喜地发现它带来的巨大的不同。1.1.2Git保证完整性Git中所有数据在存储前都计算校验和,然后以校验和来引用。这意味着不可能在Git不知情时更改任何文件内容或目录内容。这个功能建构在Git

6、底层,是构成Git哲学不可或缺的部分。若你在传送过程中丢失信息或损坏文件,Git就能发现。Git用以计算校验和的机制叫做SHA-1散列(hash,哈希)。 这是一个由40个十六进制字符(0-9和a-f)组成字符串,基于Git中文件的内容或目录结构计算出来。SHA-1哈希看起来是这样:24b9da6552252987aa493b52f8696cd6d3b00373Git中使用这种哈希值的情况很多,你将经常看到这种哈希值。实际上,Git数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。1.1.3Git一般

7、只添加数据你执行的Git操作,几乎只往Git数据库中增加数据。很难让Git执行任何不可逆操作,或者让它以任何方式清除数据。同别的VCS一样,未提交更APM组件建设规划新时有可能丢失或弄乱修改的内容;但是一旦你提交快照到Git中,就难以再丢失数据,特别是如果你定期的推送数据库到其它仓库的话。这使得我们使用Git成为一个安心愉悦的过程,因为我们深知可以尽情做各种尝试,而没有把事情弄糟的危险。更深度探讨Git如何保存数据及恢复丢失数据的话题,请参考撤消操作。1.1.1三种状态好,请注意。如果你希望后面的学习更顺利,记住

8、下面这些关于Git的概念。Git有三种状态,你的文件可能处于其中之一:已提交(committed)、已修改(modified)和已暂存(staged)。已提交表示数据已经安全的保存在本地数据库中。已修改表示修改了文件,但还没保存到数据库中。已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。由此引入Git项目的三个工作区域的概念:Git仓库、工作目录

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。