Git与通过Git添加提交文件

HTML5学堂-利利:前面几个礼拜,我们比较全面的介绍讲解了关于AJAX中相对比较高级的知识 - 跨域。本周周三的文章,想为大家介绍一款工具——Git。如果开发者们有进入大公司的发展的想法,这种工具是必不可少的。相信我们做开发的朋友们,SVN必然会接触,对于大公司来说,SVN略low,它们使用的通常是Git —— 分布式版本控制系统。

今日内容:

1 Git是什么

2 Git(分布式)与SVN(集中式)的区别

3 Git的安装与环境配置

4 在Git中进行版本创建

Git是什么?

Git:分布式版本控制系统。

关于版本控制系统,可能之前听说过,也有不少人在使用(比如SVN),但是Git与其他的一些控制系统有所不同。

SVN属于“集中式版本控制系统”,而Git是“分布式版本控制系统”。

集中式与分布式有什么区别?

集中式的工作原理:

所有的客户端都直接与服务器联系,而彼此不互通(在最后,利利绘制了图解,如果不能理解文字,可以翻到最后看图)

集中式的特点

  1. 集中式的版本控制系统要求必须联网;
  2. 在集中式的版本控制系统当中,中央服务器就好比是一个图书馆,如果我们希望修改一本书,就需要先将书借走,在修改之后,再放回图书馆。
  3. 相对安全性会比较低,一旦中央服务器出现问题,所有人都没法干活了

分布式的工作原理

所有的客户端都可以互相联系,同时任意一个客户端都可以作为一个服务器(在最后,利利绘制了图解,如果不能理解文字,可以翻到最后看图)

分布式的特点

  1. 工作时不需要联网,因为版本库就在每个人的电脑上。
  2. 当多个开发者都修改了同一个文件,那么这几个人只需把各自的修改推送给对方,就可以互相看到对方的修改了。
  3. 安全性高,每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一份就可以了。

PS:很少在两人之间的电脑上推送版本库的修改,通常会将其中一台机器作为服务器,这样操作的主要原因是方便“交换”大家的修改。当然,如果我们没有“创建”服务器,也并不会影响版本的互相“交换”。

Git的安装

在安装的过程中,大部分都是采用默认状态,除了如下几个操作之外:

  1. 修改文件路径:默认的存储位置是C盘,如果你不希望Git被安装在C盘就自定义一下喽~
  2. 选择可以使用哪种操作方法进行Git的操作

Git有两种操作方法,一种叫做Git Bash;表示的是windows下的命令行工具;一种叫做Git GUI;表示的是windows下的图形化页面。选择下图中的第二项,表示的是两种操作方法都进行安装。

检测是否安装成功

如果安装成功,当使用鼠标右键点击桌面时,菜单当中会出现两个新的选项,如图:

定义自己机器的基本信息

在Git的协作过程当中,每个机器都应当有自己的信息,这样才能够知道每次修改是谁在进行操作。

定义Git基本信息的方法命令

点击右键,选择菜单中的“Git Bash Here”,调出命令对话框

$ git config --global user.name "HTML5学堂"
$ git config --global user.email "email@example.com"

--global参数:用于表示全局,使用了这个参数,则表示当前机器上所有的Git仓库都会使用这个配置

在Git中进行版本创建

找到要创建版本库的文件夹

找到你需要生成版本的地方,然后,在该目录下点击右键,调用Git Bash here

打开运行窗口之后,能够从命令窗中看到路径“/u/Git_test h5course”

相关命令

$ mkdir 文件夹名
$ cd 路径
$ pwd

$ mkdir 文件夹名。代码说明:mkdir表示的创建一个文件夹。如果我们希望,在当前的路径“/u/Git_test h5course”下,创建一个名为“h5”的文件夹,那么输入如下命令:“$ mkdir h5”

$ cd 路径。代码说明:cd表示的是路径,通过cd 路径,进行当前路径的变化。比如当我创建h5文件夹之后,希望能够进入这个文件夹进行操作,就输入“$ cd h5”即可。如果想从当前路径返回到上一级,则使用“$ cd ../”即可。

$ pwd。代码说明:该命令的主要作用,是用来显示当前目录。

将目录变成Git可管理的仓库

通过git init命令把这个目录变成Git可以管理的仓库

PS:当前目录下多了一个.git的目录(默认是隐藏状态),这个目录是Git来跟踪管理版本库的,不要随意手动修改这个目录里面的文件,否则Git仓库可能会被破坏。

添加并提交文件

在当前的仓库当中,可能有一些文件我们需要添加到版本库当中,有些文件我们不需要添加到版本库当中,在这个里面,我们使用add和commit命令进行操作。

第一步,需要在当前的仓库下运行(也就是使用了init命令时的文件目录,在这个实例当中是“/u/Git_test h5course/h5”)

在当前的仓库下,创建一个html文件,比如index.html

第二步,将该文件通过git add方法添加到仓库当中

$ git add 文件名

第三步,将该文件通过git commit方法,告诉Git,并把文件提交到仓库

$ git commit -m 说明信息

代码说明:-m后面输入的是本次提交的说明,就如同我们每次提交SVN时的“注释”一样,可以不写,但是建议书写。

git commit命令执行成功后会告诉我们,有1个文件被改动(我们新添加的index.html文件),并且插入了11行内容(index.html中有11行的内容)。

Git知识小结

HTML5学堂-利利:今天的内容就讲到这里吧,接下来我们整理一下思路。

  1. Git是一种分布式版本控制系统
  2. 其主要优势在于“不需要联网”、“安全性高”以及“强大的分支功能(这方面以后我们会介绍到)”
  3. 使用git config进行机器基本信息的配置
  4. 使用mkdir、cd、pwd等命令,找到需要创建成“版本仓库”的地址(路径)
  5. 使用init,将该目录定义成Git可以管理的仓库
  6. 使用add、commit命令,实现向仓库当中添加、提交文件

HTML5小编-利利 耗时7小时

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2016-05-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华仔的技术笔记

使用git命令方式将本地工程上传到Gitlab或Github

6757
来自专栏张泽旭的专栏

Applet小应用程序之间的通讯

1、 首先解压:如何运行applet.zip文件,解压后如图

693
来自专栏WebDeveloper

git使用

1、git init 初始化仓库 2、 git status 查看仓库各文件的状态信息 3、撤销commit的文件 git log显示commit日志

1062
来自专栏性能与架构

小程序示例 - 不同页面间的消息传递

场景 假设有两个页面:用户列表页、信息编辑页 在列表中点击后某条信息后,进入编辑页面 ? 修改了用户信息后,返回到列表页,列表中需要显示修改后的信息 例如把 “...

3717
来自专栏懒人开发

用WebStorm在微信小程序中使用LESS

自己前端不熟悉,很多都需要练习 网上找了一个css的demo, 放到微信小程序后,可以运行

3356
来自专栏IT米粉

hexo——轻量、简易、高逼格的博客

写blog虽然经历了N多不同时代的产品,恒久不变的始终是自己无人问津的网站。虽然没几个人看,还是隔断时间就要折腾一下。从最开始的wordpress,到tale,...

2352
来自专栏破晓之歌

前端页面可视化开发-livestyle,livereload,browser-sync

本质是监控文件修改,实时刷新浏览器,需要安装livereload插件和node.js插件,全局刷新

912
来自专栏草根专栏

Git基本命令 -- 创建Git项目

在这里下载git: https://git-scm.com/ 安装的时候, 如果是windows系统的话, 可以勾选unix的命令行工具, 这样在windows...

2827
来自专栏从零开始学自动化测试

appium+python自动化44-appium命令行模式

appium desktop有个客户端版本,每次运行脚本的时候都要去双击启动才能运行,很显然不太方便,影响效率。那么有没什么办法不启动桌面程序就能运行呢,比如c...

932
来自专栏漫漫深度学习路

ubuntu 文件目录结构

Ubuntu(linux)文件目录结构 主目录 /bin : 包含系统应用的地方,常用的命令,ls ,rm 等等都在这。 /sbin : 包含一些只能被超级用户...

2109

扫码关注云+社区