GIT深入学习——基础篇

前言

关于GIT的认知,其实是随着自己对网络应用的认识的深入而发生的。在以前刚刚学习编程语言的时候,心里只有很简单的内容,就是写出一段段代码,但是后来随着对系统的认识,随着对诸多文件的组织与管理,随着对网络应用的进一步理解,内心逐渐开始向往这些内容及其知识的学习。

基础篇

首先,本文的内容基于网络上的一些资料以及自己的一些理解,若有不足之处,敬请指正。

本教程将会采用主题加阐述的方式进行。即

主题:A

阐述:B

主题:GIT的出现

阐述:因为在日常工作中时常面临历史记录的问题,每次做完相关的任务之后,却在迎来下一次变动的时候给人带来迷惑。

因此GIT分布式版本管理系统应用而生,其起点是为了更好地管理Linux内核开发而创立的。

它可以在任何时间、吧文档的状态记录保存起来,因此可以将编辑过的文档恢复到之前的状态,也可以显示编辑前后的内容差异。

另外一点,它还提供了旧文件覆盖新文件时的警告功能,防止自己的工作将别人的工作覆盖掉。

主题:管理历史记录的数据库

阐述:数据库是记录文件或目录的地方,存储着内容修改的历史记录。在数据库的管理下,把文件和目录修改的历史记录放在对应的目录下。

分为远程数据库和本地数据库。

远程数据库是配有专门的服务器,为了多人共享而建立的数据库。

本地数据库是为了方便用户个人使用,在自己的机器上配置的数据库。

平时对手头上的本地数据库操作就可以了。而若想要修改或者得到其他人编辑的内容,则需要进入远程数据库。

创建数据库的方式有两种:一是创建全新的数据库,二是复制已经存在的数据库。

主题:修改记录的提交

阐述:若要将文件或目录的添加和变更保存到数据库,就需要进行提交。

执行提交后,数据库中会生成上次提交的状态与当前状态的差异记录(也被称为revision)

系统会根据不同的内容自动命名,并提供该命名的查找功能。

执行提交时,系统会要求输入提交信息。务必输入提交信息,因为在空白状态下执行提交会失败。

主题:工作树和索引

 阐述:在git管理下,实际操作的目录被称为工作树。

在数据库和工作树之间有索引,索引是为了向数据库提交作准备的区域。

GIT在进行提交的时候,不是直接将工作树的状态保存到数据库,而是在设置在中间索引区域的状态保存到数据库,因此,要提交文件,首先需要把文件加入到索引区域中。而凭借中间的索引,可以避免工作中不必要的文件提交,还可以将文件修改的部分内容的一部分加入索引区域并提交。

主题:安装GIT

阐述:可以使用命令行、windows和Mac安装。

命令行安装见:http://git-scm.com/

windows安装可以找到GIT bash

Mac安装可以使用homebrew

主题:选定命令行方式学习GIT(初步设置)

阐述:我们遵循最古老的命令行的方式来学习内容。

安装git之后,输入用户名和电子邮件地址,该设置在安装git后进行一次就够了,这些信息将作为提交者信息显示在更新历史中。

git config --global user.name "<user name>"
git config --global cuser.email "<email>"

git config --global color.ui auto
#以上命令可改变git的颜色
git config --global alias.co checkout

主题:新建数据库(命令行)

阐述:在本地新建数据库,创建一个名为tutorial的空目录,并把它放在git管理之下。

#首先创建目录
git init 
#将tutorial目录移动到本地的git目录

主题:提交文件(命令行)

阐述:在tutotial中创建新的文件,并将文件添加到数据库。

git status
#用于确定tutorial目录的状态
git add sample.txt
git status
#即可看到改动情况
git .
#可以将本目录加入索引
#确认好索引之后,即可以提交
git commit -m "first commit"
#使用log命令,可以看到新的提交
git log
#另外介绍gtik的可视化工具,可以在GUI中确认提交记录
gitk

主题:共享数据库

阐述:push到远程数据库

为了将本地的修改记录共享到远程数据库,必须上传本地数据库中存储的修改记录。为此,需要执行push推送操作。

如果远程数据库中有其他人的修改记录,那么把它完整地复制下来就可以接着进行工作。

克隆操作就可以复制远程数据库。

从远程数据库pull,进行pull拉取操作就相当于把远程数据库更新到本地数据库。

主题:共享数据库(命令行操作)

阐述:首先在gitee网站创建远程仓库,然后从本地机器进行登录以及后续操作。

获得git远程仓库的URL地址为: https://gitee.com/liuyuaec/tutorial.git

 

#首先添加远程仓库到本地
git remote add origin https://gitee.com/liuyuaec/tutorial.git

#之后可以开始push
git push-u origin master
#复制远程仓库到本地、
git clone https://gitee.com/liuyuaec/tutorial.git
#可以在git的本地目录中直接对远程数据库进行push
git push
#将远程仓库pull到本地
git pull origin master

主题:整合修改记录,合并修改记录,解决冲突

阐述:在执行pull之后,进行下一次push之前,如果其他人进行了推送内容到远程数据库,那么push将被拒绝。

git会在发生冲突的地方修改文件内容,需要手动修改冲突。修正冲突的地方后,可以进行提交。

主题:合并修改记录、解决冲突(命令行)

阐述:=====分割的上下即是不同版本的修改内容。进行删除更改操作即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流鱼a_ec

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值