千家信息网

Git和Maven怎么创建和使用子模块项目

发表于:2024-09-23 作者:千家信息网编辑
千家信息网最后更新 2024年09月23日,本篇内容主要讲解"Git和Maven怎么创建和使用子模块项目",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Git和Maven怎么创建和使用子模块项目"吧!
千家信息网最后更新 2024年09月23日Git和Maven怎么创建和使用子模块项目

本篇内容主要讲解"Git和Maven怎么创建和使用子模块项目",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Git和Maven怎么创建和使用子模块项目"吧!

创建子模块项目

打开 Git Bash,创建一个空目录并进入:

$ mkdir erp-submodules$ cd erp-submodules/

把当前目录初始化为 Git 仓库

$ git init

添加所有子模块(可以一次输入多行命令,注意看最后一行命令是否执行):

$ git submodule -b master add http://IP/auto-erp/purchase.gitgit submodule -b master add http://IP/auto-erp/checkup.gitgit submodule -b master add http://IP/auto-erp/task.gitgit submodule -b master add http://IP/auto-erp/sale.gitCloning into 'purchase'...remote: Counting objects: 5151, done.remote: Compressing objects: 100% (86/86), done.remote: Total 5151 (delta 49), reused 108 (delta 30)Receiving objects: 100% (5151/5151), 1.12 MiB | 0 bytes/s, done.Resolving deltas: 100% (2269/2269), done.Checking connectivity... done.warning: LF will be replaced by CRLF in .gitmodules.The file will have its original line endings in your working directory.

等待所有项目下载完成。

此时就创建了所有的子项目,为了方便以 MAVEN 方式导入全部项目,使用子模块配置。

在当前项目下面添加 pom.xml,内容如下:

  4.0.0  com.github.abel533  erp-modules  1.0.0-SNAPSHOT  pom       purchase barch checkup task sale packing logistics  

此时项目已完成,提交本地更改并上传到 git 服务器。

# 添加所有$ git add -all# 提交$ git commit -m 'first commit'# 添加远程仓库地址$ git remote add origin 创建好的仓库地址# 推送$ git push origin master

检出导入项目

刚刚按照上面步骤操作后,本地是可以用了,但是如果其他成员想下载,就需要检出。

在要检出的目录中,打开 git bash,输入下面的命令检出项目:

$ git clone --recursive 仓库地址# 以下为部分输出日志Cloning into 'erp-modules'...remote: Counting objects: 6, done.remote: Compressing objects: 100% (6/6), done.remote: Total 6 (delta 0), reused 0 (delta 0)Unpacking objects: 100% (6/6), done.Checking connectivity... done.Submodule 'ERPcrm' (http://IP/auto-erp/ERPcrm.git) registered for path 'ERPcrm'Submodule 'accountNew' (http://IP/auto-erp/accountNew.git) registered for path 'accountNew'Submodule 'barch' (http://IP/auto-erp/barch.git) registered for path 'barch'Submodule 'checkup' (http://IP/auto-erp/checkup.git) registered for path 'checkup'Submodule 'contract' (http://IP/auto-erp/contract.git) registered for path 'contract'Cloning into 'ERPcrm'...remote: Counting objects: 1651, done.remote: Compressing objects: 100% (274/274), done.remote: Total 1651 (delta 139), reused 447 (delta 70)Receiving objects: 100% (1651/1651), 265.91 KiB | 0 bytes/s, done.Resolving deltas: 100% (494/494), done.Checking connectivity... done.Submodule path 'ERPcrm': checked out '26686570bc1f22627f717830599ac77248014b87'Cloning into 'accountNew'...remote: Counting objects: 1850, done.remote: Compressing objects: 100% (689/689), done.otal 1850 (delta 866), reused 1624 (delta 664)Receiving objects: 100% (1850/1850), 496.70 KiB | 0 bytes/s, done.Resolving deltas: 100% (866/866), done.Checking connectivity... done.

此时所有子模块都自动下载了,但是所有子模块都没有选择分支,如果不选择分支会导致项目混乱,所以下面切换分支,并且更新。

# 进入 clone 下来的目录$ cd erp-modules/# 执行下面的命令 git submodule foreach <命令>$ git submodule foreach git checkout master && git pull origin master

所有子模块都切换到了 master 分支并且进行了更新。可以将项目导入 IDE 了。

在后续使用的时候,要随时注意子模块的分支,防止意外导致的错误。

利用git submodule foreach <命令> 可以很方便的对子模块批量执行命令。

到此,相信大家对"Git和Maven怎么创建和使用子模块项目"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0