zoukankan      html  css  js  c++  java
  • Git基本理论

    Git的历史

    同生活中的许多伟大事物一样, Git诞生于一个极富纷争大举创新的年代。

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

    到了2005年,开发BitKeeper的商业公司同Linux内核开源社区的合作关系结束, 他们收回了Linux内核社区免费试用BitKeeper的权力。这就迫使Linux开源社区(特别是Linux的缔造者Linus Torvalds)基于使用BitKeeper时的经验教训,开发自己的版本系统。也就是后来的Git!

    Git是目前世界上最先进的分布式版本控制系统

    Git是免费的、开源的、最初Git是为了辅助Linux内核开发的,来替代BitKeeper!

    Git环境配置

    1. 软件下载

    Windows系统:

    打开git官网 https://git-scm.com/, 下载git对应操作系统的版本。

    官网下载太慢,我们可以使用淘宝镜像下载: http://npm.taobao.org/mirrors/git-for-windows/

    CentOS系统:

    yum install git

    MacOS系统:

    通过homebrew安装Git

    1. 未安装homebrew,需安装homebrew

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    2. 安装git

    brew install git

    2. 启动Git

    安装成功之后在开始菜单中会有Git项, 菜单下有3个程序: 任意文件夹下右键也可以看到对应的程序

    Git Bash: Unix与Linux风格的命令行, 使用最多, 推荐最多

    Git CMD: Windows风格的命令行

    Git GUI: 图形界面的GIt, 不建议初学者使用, 尽量先熟悉常用的命令

    3.Git配置

    查看配置

    git config -l

     查看不同级别的配置信息

    # 查看系统config
    git config --system --list
    
    # 查看当前用户(global)配置
    git config --global --list

    设置用户名与邮箱(用户标识, 必要)

    当安装Git后首先要做的事情是设置自己的用户名称和e-mail地址。这是非常重要的, 因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中。

    git config --global user.name "featherwit" # 名称
    git config --global user.email "featherwit0918@163.com" # 邮箱

    只需要做一次这个设置,如果传递了--global选项, 因为Git将总是会使用该信息来处理在系统中所做的一切操作。如果希望在一条特定的项目中使用不同的名称或e-mail地址,可以在该项目中运行该命令而不要--global选项。总之--global为全局配置, 不加为某个项目的特定配置

    Git基本理论

    1. 工作区域

    Git本地有三个区域: 工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:

    • Workspace: 工作区,就是平时存放项目代码的地方
    • Index/Stage: 暂存区, 用于临时存放你的改动,事实上它只是一个文件,保存即将要提交到文件列表信息
    • Repository: 仓库区(或本地仓库), 就是安全存放数据的位置,这里面有你提交的所有版本的数据。其中HEAD指向最新放入仓库的版本
    • Remote: 远程仓库, 托管代码的服务器, 可以简单的认为是你项目组的一台电脑用于远程数据交换

    本地的三个区域确切的说应该是git仓库中HEAD指向的版本:

    • Directory: 使用Git管理的一个目录, 也就是一个仓库, 包含我们的工作空间和Git管理空间
    • WorkSpace: 需要通过Git进行版本控制的目录和文件, 这些目录和文件组成了工作空间
    • .git: 存放Git管理信息的目录, 初始化仓库的时候自动创建
    • Index/Stage: 暂存区, 或者叫做待提交更新区, 在提交进入repo之前, 我们可以把所有的更新放在暂存区
    • Local Repo: 本地仓库, 一个存放在本地的版本库; HEAD会只是当前的开发分支(branch)
    • Stash: 隐藏, 是一个工作做保存栈, 用户保存/恢复WorkSpace中的临时状态

    2. 工作流程

    git的工作流程一般是这样的:

    1. 在工作目录中添加、修改文件

    2. 将需要进行版本管理的文件放入暂存区域

    3. 将暂存区域的文件提交到git仓库

    因此, git管理的文件有三种状态: 已修改(modified)、已暂存(staged)、已提交(committed)

  • 相关阅读:
    详解mysql int类型的长度值问题
    linux的作业控制(job control)
    Linux环境变量的设置和查看方法
    gearman入门初步
    VIM 乱码终极解决
    android系统通过图片绝对路径获取URI的三种方法
    Buck电路调试
    第二次画板
    1 第一次画PCB总结
    一起学习模拟电路之1
  • 原文地址:https://www.cnblogs.com/featherwit/p/12887865.html
Copyright © 2011-2022 走看看