赞
踩
一个 “子模块” 其实就是一个标准的 Git 仓库。不同的是,它被包含在另一个主项目的仓库中。一般情况下,它包含一些库文件和其它资源文件,你可以简单地把这些库文件作为一个子模块添加到你的主项目中。
一个子模块也是一个功能齐全的 Git 仓库,就内部而言它和别的仓库没有什么区别,你可以对它进行修改、提交、抓取、推送等等操作。
让我们来看看在实际操作中子模块是如何工作的吧。
在这个简单的项目中,我们建立一个新的 “lib” 文件目录用来存放一些库文件。
$ mkdir lib
$ cd lib
使用 “git submodule add” 命令,我们会从 GitHub 中添加一个小的 Javascript 库:
$ git submodule add https://github.com/xxx
来让我们来看看现在发生了什么:
(1) 这个命令将对一个指定的 Git 仓库进行了一个简单地克隆操作:
Cloning into 'lib/ToProgress'...
remote: Counting objects: 180, done.
remote: Compressing objects: 100% (89/89), done.
remote: Total 180 (delta 51), reused 0 (delta 0), pack-reused 91
Receiving objects: 100% (180/180), 29.99 KiB | 0 bytes/s, done.
Resolving deltas: 100% (90/90), done.
Checking connectivity... done.
(2) 当然这一切也都会反映在我们当前项目的文件结构上。在项目中的 “lib” 目录中包括了一个新的 “ToProgess” 文件目录。通过这个文件目录所包含的 “.git” 子文件夹我们就能确认,这就是一个标准的 Git 仓库。
当然,子模块的工作文件都放置在你项目的指定的目录中。最后当你要使用这些库文件时,你会发现它们并不是主项目的版本控制的一部分
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。