zoukankan      html  css  js  c++  java
  • Git概述

    Git分布式版本控制工具

    Git概述

    Git历史

    Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众多的参与者。 绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。 到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。

    到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。 这就迫使 Linux 开源社区(特别是 Linux 的缔造者 Linus Torvalds)基于使用BitKeeper 时的经验教训,开发出自己的版本系统。他们对新的系统制订了若干目标:

    速度
    简单的设计
    对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
    完全分布式
    有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)

    Git与SVN对比
    SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而开发人员工作的时候,用的都是自己的电脑,所以首先要从中央服务器下载最新的版本,然后开发,开发完后,需要把自己开发的代码提交到中央服务器。
    集中式版本控制工具缺点:1. 服务器单点故障 2.容错性差

    image-20201022143021206

    Git是分布式版本控制系统(Distributed Version Control System,简称 DVCS) ,分为两种类型的仓库:

    • 本地仓库和远程仓库
    • 本地仓库:是在开发人员自己电脑上的Git仓库
    • 远程仓库:是在远程服务器上的Git仓库
    • Clone:克隆,就是将远程仓库复制到本地
    • Push:推送,就是将本地仓库代码上传到远程仓库
    • Pull:拉取,就是将远程仓库代码下载到本地仓库

    image-20201022143129844

    Git工作流程
    工作流程如下:
    1.从远程仓库中克隆代码到本地仓库
    2.从本地仓库中checkout代码然后进行代码修改
    3.在提交前先将代码提交到暂存区
    4.提交到本地仓库。本地仓库中保存修改的各个历史版本
    5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库

    image-20201022143144883

    Git下载与安装
    下载地址: https://git-scm.com/download

    image-20201022143529209

    Git代码托管服务

    常用的Git代码托管服务

    gitHub( 地址:https://github.com/ )是一个面向开源及私有软件项目的托管平台,因为只支持Git 作为唯一的版本库格式进行托管,故名gitHub
    码云(地址: https://gitee.com/ )是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快
    GitLab (地址: https://about.gitlab.com/ )是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务

    在码云注册账号

    要想使用码云的相关服务,需要注册账号(地址: https://gitee.com/signup

    image-20201022143552536

    登录码云并创建Git远程仓库

    注册完成后就可以使用刚刚注册的邮箱进行登录(地址: https://gitee.com/login

    image-20201022143612987

    登录成功后就可以创建Git远程仓库

    image-20201022143624760

    创建完成后可以查看仓库信息

    image-20201022143949829

    每个Git远程仓库都会对应一个网络地址,可以点击克隆/下载按钮弹出窗口并点击复制按钮获得这个网络地址

    image-20201022144211745

    我们当前创建的Git远程仓库对应的地址为:https://gitee.com/dalianpai2/git_learning.git

    邀请其他用户成为仓库成员

    前面已经在码云上创建了自己的远程仓库,目前仓库成员只有自己一个人(身份为管理员)。在企业实际开发中,一个项目往往是由多个人共同开发完成的,为了使多个参与者都有权限操作远程仓库,就需要邀请其他项目参与者成为当前仓库的成员。

    image-20201022144329129

  • 相关阅读:
    在linux上安装python, jupyter, 虚拟环境(virtualenv)以及 虚拟环境管理之virtualenvwraper
    linux
    Django ORM那些相关操作
    Django 中 form 介绍
    MySQL完整性约束
    git入门
    MySQL表的操作
    努力努力再努力
    Docker初始
    IO模型
  • 原文地址:https://www.cnblogs.com/dalianpai/p/13858344.html
Copyright © 2011-2022 走看看