1.1 Git介绍

1.1.1 什么是Git

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

1.1.2 版本控制工具具备的功能

1)、协同修改

可多人并行不悖的修改服务器上的同一个文件。

2)、数据备份

不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。

3)、版本管理

在保存每一个版本的文件信息时,要做到不保存重复数据,以节约存储空间,提高运行效率。(注:SVN增量式管理方式,Git采用的是文件快照方式。)

4)、权限控制

a)、对团队中参与开发的人员进行权限控制。

b)、对团队外的开发者贡献的代码进行审核---Git独有。

5)、历史记录

a)、查看修改人、修改时间、修改内容、日志信息等。

b)、将本地文件恢复到某一个历史状态。

6)、分支管理

允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

1. 1.3 版本控制的由来和分类

工程设计领域中使用版本控制管理工程蓝图的设计过程,在IT开发过程中也可以使用版本控制思想来管理代码的迭代版本。

本地版本控制系统

集中式版本控制工具:CVS、VSS、SVN等。

分布式版本控制工具:Git、Mercurial、Bazaar、Darcs等。

1.4 Linux系统版本控制历史

1. 1.5 Git的优势

1)、大部分操作可以在本地完成,不需要联网

2)、完整性保证

3)、尽可能添加数据而不是删除或修改数据

4)、分支操作非常快捷流畅

5)、与Linux命令全面兼容

1. 1.6 Git的结构

1. 1.7 Git和代码托管中心

局域网环境下:GitLab

互联网环境下:GitHub(国外)、码云(国内)

代码托管中心的主要任务是:维护远程库

1. 1.8 本地库和远程库

1)、团队内部协作

2)、跨团队协作

git小白的学习的更多相关文章

  1. (数据科学学习手札141)利用Learn Git Branching轻松学习git常用操作

    1 简介 大家好我是费老师,Git作为世界上最流行的版本控制系统,可以说是每一位与程序打交道的朋友最值得学习的软件之一.除了管理自己的项目,如果你对参与开源项目感兴趣,那么Git更是联结Github. ...

  2. Java小白不走弯路学习Java流程以及学习误区

    学习Java编程技术肯定是以就业拿到高薪工作为主要目的的,可是高薪不会那么轻易拿到,这是一个最简单的道理.没有付出就没有回报,在整个学习Java编程技术的过程中,你需要付出时间.精力.金钱.废话不多说 ...

  3. Git的初步学习

    前言 感谢! 承蒙关照~ Git的初步学习 为什么要用Git和Github呢?它们的出现是为了用于提交项目和存储项目的,是一种很方便的项目管理软件和网址地址. 接下来看看,一家公司的基本流程图: 集中 ...

  4. React Native小白入门学习路径——五

    React Native小白入门学习路径--五 序 "哦天呐!" 这句话成了我在实验室的口头禅, 老师可能觉得我们都是大神吧,都还在看着基础就给布置了那么多任务:写一个RN的TDD ...

  5. git 源码学习(init-db) 提交版本号 083c516331

    写在前面的废话: 学完git之后,还是感觉云里雾里的,于是乎,就想到了通过学习git源码,来加深git的熟练度,同时学习一下c语言编程. git源码学习,逐步分析 这篇帖子是逐步分析git源码的,将g ...

  6. 很棒的git和python学习网站

    很棒的git和python学习网站:http://www.liaoxuefeng.com/ 博主名叫廖雪峰

  7. 前端小白webpack学习(二)

    前一篇写了自我总结的webpack定义:为JavaScript服务的静态模块打包器 和几大基本概念 entry.output.plugins.loaders等.指路前端小白webpack学习(一) 下 ...

  8. 前端小白webpack学习(一)

    俗话说得好,好记性不如烂笔头. 之前就在学习中看过webpack的教程,然而一段时间没用,火速的忘光了.写这篇博文,做个总结,也让自己以后有个地方回顾. 看webpack之前,我先去看了一下官方文档, ...

  9. Git使用教程学习

    Git使用教程学习 在第十二周的个人作业上,王文娟老师希望我们去自己课后了解一下git的使用方式以及一些基础知识,在本学期其他的课程上,我们已经稍微了解过一些git的基础知识,因此在本次作业里,我补充 ...

随机推荐

  1. 51Nod XOR key —— 区间最大异或值 可持久化字典树

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1295 1295 XOR key  题目来源: HackerRa ...

  2. hdmap相关

    图片来源:https://vires.com/ 新闻摘抄: 对此,武汉光庭信息技术股份有限公司副总经理罗跃军告诉记者:“事实上,最初由自动驾驶车身控制系统协会所提出的地图精度要求很高,需要达到5cm甚 ...

  3. 分享知识-快乐自己:论 Mybatis中的关联关系(一对多,多对一,多对多)

    论:一对多:(举例一个省有多个市)就是实体类中有(市)类型集合属性:多对一:(多个市有一个共同的省)就是类中有(省)类型的属性.下面来介绍:一对一.多对一的使用方式. 一对多方: package ml ...

  4. 如何设置android studio让程序运行在真机中

    1.Run——>Edit Configurations... 2.运行

  5. Git_学习_04_ 多人协作开发的过程

    多人协作的工作模式通常是这样: 1.首先,可以试图用 git push origin branch-name 推送自己的修改: 2.如果推送失败,则因为远程分支比你的本地更新,需要先用 git pul ...

  6. BaseServlet优化Servlet,实现类似struts2的一些简单效果

    package cn.itcast.web.servlet; import java.io.IOException; import javax.servlet.ServletException; im ...

  7. codeforces 706A A. Beru-taxi(水题)

    题目链接: A. Beru-taxi 题意: 问那个taxi到他的时间最短,水题; AC代码: #include <iostream> #include <cstdio> #i ...

  8. linux 进程学习笔记-进程状态

    task_struct的state字段记录的进程的状态,可分为如下几种: #define TASK_RUNNING 0 可运行状态.这是 “进程正在被CPU运行” 和 “进程正在可运行队列中等待被CP ...

  9. Codefroces 762A k-th divisor 数论

    Codeforces 762A 题目大意: 给定两个正整数n,k\((n \le 10^{15},k\leq10^9)\),求n的从小到大的第k个约数,无解输出-1 分析: 我们会自然而然地想到找出n ...

  10. 洛谷P2983 [USACO10FEB]购买巧克力Chocolate Buying

    题目描述 Bessie and the herd love chocolate so Farmer John is buying them some. The Bovine Chocolate Sto ...