0. 版本控制

版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修改情况的系统(vcs)。

svn等是集中式版本控制,即服务器在单一机器上,每次checkout变化的文件,若机器故障,则有可能很难恢复。而git等则是分布式控制,相当于每次checkout都是一次完整的本地备份,则遇见故障也可以轻松恢复过去。

1. git特性

速度、设计简单、对非线性开发模式的强力支持(允许多个并行开发的分支)、完全分布式、有能力高效管理大型项目如linux内核

2. 基础要点

• 直接快照,而非比较差异,只关心文件数据的整体是否变化,其他系统则只关心文加内容的具体变化。

• 近乎所有操作都可本地执行,即便断网也可在本地操作,联网时再上传到服务器。

• 时刻保持数据完整,在保存前进校内容校验和计算(checksum),并将结果作为数据的唯一标识和索引,所以文件传输时不完整或磁盘损坏,git都能立即察觉。

git使用sha-1算法计算数据的校验和,通过对文件的内容或目录的结构计算出一个sha-1哈希值,作为指纹字符串。该字符串由40个十六进制字符(-,a-f)组成,例如:
24554avbfg6yhui890oplkjhgt5r4edsc33456u8
保存在git数据库中的东西都是用哈希值来做索引的而不是文件名。

• 多数操作仅添加数据

• 三种状态:已修改、已暂存、已提交

3. 安装

方式:源代码/安装包

4. 配置(具体配置命令参看git config)

• 用户信息配置

全局配置,使用所有项目
git config  --global user.name 'hhb'
git config  --global user.email ***@qq.com

单个项目只要在项目内的配置中去掉global即可

使用git config --get user.name可查看用户名

•  指定文本编辑器

git config --global core.editor vim

• 差异分析工具

git config --global merge.tool vimdiff

•  查看配置信息

git config --list

5. 帮助

若需要查看工具使用方法,可以用help命令

git help config 查看config的帮助

【使用git】初识git的更多相关文章

  1. git 入门教程之初识git

    初识 git git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 背景 我们都知道,Linus 在1991年创建了开源的linux系统,随着不断发展壮大,目前已发展成为最大 ...

  2. 在春意盎然的季节里初识GIT

    Git 与 SVN 区别 GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等. 如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征. ...

  3. git初识

    下载网上的开发员的项目 git clone https://github.com/xxxxxx/test.git 下载好,进入刚下载的好的test项目目录,可以修改对应的代码,然后 git statu ...

  4. 初识git(17/8/21)

    git是一个分布式的版本管理系统 通过廖雪峰的官方网站(maybe2017)来学习的,比较详实跟着操作就行,记录基本的一些命令还有学习是遇到的一些问题和收获,方便下次查阅. git的安装 -. win ...

  5. mzy git学习,初识git(一)

    GIT学习 git工作区.暂存区.本地库.远程库 工作区:实际上我们工作的地方,进行写代码或者文件的地方. 暂存区:我们执行了git add 操作之后,就会被提交到暂存区. 本地库:其实最后我们需要执 ...

  6. katalon studio配置git与git项目创建

    katalon 是一款在2015年诞生的可以安装在windows.macOS.linux操作系统上,基于selenium 和 Appium 测试框架,并集成了这些框架的优点的自动化测试工具.关于这个工 ...

  7. [Git] 还原Git上commit,但是没有push代码

    直接在Idea上操作2步解决: 1. 找到: 2. 在To Commit里面填写:HEAD^,表示将commit的信息还原为上一次的,需要多次直接reset多次即可: 使用命令行:原理一样 以下内容转 ...

  8. 命令行操作svn和git和git

    前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...

  9. Git:Git初体验——Git安装配置

    作为即将成为一个程序员的男人,一直在听别人说Git多好多好,之前也随便了解了一些,但是始终没有决心去学会.现在大四了,只有毕设和一门开学六七周只去过一次课的全员必修课外,也没有什么事情做,何不去做这些 ...

  10. 使用Git、Git GUI和TortoiseGit

    1. 关于命令行 我一直建议在命令行中使用Git或者SVN.因为这样可能更加了解他们的工作方式,也不容易遗漏重要的问题和提醒. 在Windows习惯的驱使下,大多数人是不会看弹出的对话框中有什么信息的 ...

随机推荐

  1. css中table样式

    border-spacing:设置相邻单元格的边框间的距离; border-collapse:设置表格的边框是否被合并为一个单一的边框:{separate/collapse/inherit(IE不支持 ...

  2. 导入Eclipse工程 到 Android Studio

    一.从Eclipse导入工程到Android Studio 根据官方的介绍,Android Studio可以兼容Eclipse的现有工程,但需要做一些操作: 首先升级ADT到最新版本,目前为版本号为2 ...

  3. "A transport-level error has occurred when sending the request to the server"的解决办法

    http://blog.csdn.net/luckeryin/article/details/4337457 最近在做项目时,遇到一个随机发生的异常:"A transport-level e ...

  4. 2,SFDC 管理员篇 - 组织架构

    1,组织架构 Setup | Administrator | Manage User| Role 组织层级有三种模式,基于区域划分,基于产品划分,基于公司规模划分层级(目标客户群体划分层级或渠道划分) ...

  5. java web项目获取各种路径

    1.可以在servlet的init方法里 String path = getServletContext().getRealPath("/"); 这将获取web项目的全路径 例如 ...

  6. 使用DotNetOpenAuth搭建OAuth2.0授权框架

    标题还是一如既往的难取. 我认为对于一个普遍问题,必有对应的一个简洁优美的解决方案.当然这也许只是我的一厢情愿,因为根据宇宙法则,所有事物总归趋于混沌,而OAuth协议就是混沌中的产物,不管是1.0. ...

  7. [转载]:fortran之format格式化输出总结

    先贴一段别人总结好的: 格式化输出的控制字符非常的丰富,但常用的并不多,一般说来:" I .F.E.A.X "是最常使用的几个格式,最 好把它们都记下来. Iw[.m] 以w个字符 ...

  8. jQuery图片渐变特效的简单实现

    (document).ready(function() {(document).ready(function() {("div.baba").mouseleave(function ...

  9. loadrunner工具使用之脚本创建

    loadrunner工具使用之脚本创建 一.创建脚本 1.打开loadrunner,选择第一个控件VuGen(创建/编辑脚本),点击

  10. [ 学习路线 ] 2015 前端(JS)工程师必知必会 (2)

    http://segmentfault.com/a/1190000002678515?utm_source=Weibo&utm_medium=shareLink&utm_campaig ...