最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Git和Maven的子模塊簡單實踐

 更新時間:2018年12月24日 11:40:26   作者:isea533  
今天小編就為大家分享一篇關于Git和Maven的子模塊簡單實踐,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

當一個產品或者項目由大量獨立模塊組成時,想要從 Git 挨個下載下來導入 IDE 查看并不容易,此時可以結合使用 Git 和 Maven 的子模塊來處理這種場景。

通過 Git 子模塊可以自動批量下載所有關聯(lián)的項目,通過 Maven 子模塊可以批量導入到 IDE 中,結合這兩者可以很容易的管理和查看項目。

創(chuàng)建子模塊項目

打開 Git Bash,創(chuàng)建一個空目錄并進入:

$ mkdir erp-submodules
$ cd erp-submodules/

把當前目錄初始化為 Git 倉庫

$ git init

添加所有子模塊(可以一次輸入多行命令,注意看最后一行命令是否執(zhí)行):

$ git submodule -b master add http://IP/auto-erp/purchase.git
git submodule -b master add http://IP/auto-erp/checkup.git
git submodule -b master add http://IP/auto-erp/task.git
git submodule -b master add http://IP/auto-erp/sale.git
Cloning 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.

等待所有項目下載完成。

此時就創(chuàng)建了所有的子項目,為了方便以 MAVEN 方式導入全部項目,使用子模塊配置。

在當前項目下面添加 pom.xml,內容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.github.abel533</groupId>
  <artifactId>erp-modules</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <modules>
 <!-- 所有子模塊 -->
    <module>purchase</module>
 <module>barch</module>
 <module>checkup</module>
 <module>task</module>
 <module>sale</module>
 <module>packing</module>
 <module>logistics</module>
  </modules>
</project>

此時項目已完成,提交本地更改并上傳到 git 服務器。

# 添加所有
$ git add -all
# 提交
$ git commit -m 'first commit'
# 添加遠程倉庫地址
$ git remote add origin 創(chuàng)建好的倉庫地址
# 推送
$ 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/
# 執(zhí)行下面的命令 git submodule foreach <命令>
$ git submodule foreach git checkout master && git pull origin master

所有子模塊都切換到了 master 分支并且進行了更新??梢詫㈨椖繉?IDE 了。

在后續(xù)使用的時候,要隨時注意子模塊的分支,防止意外導致的錯誤。

利用git submodule foreach <命令> 可以很方便的對子模塊批量執(zhí)行命令。

刪除 Git 子模塊比較麻煩,可以參考下面地址:
https://gist.github.com/myusuf3/7f645819ded92bda6677

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

相關文章

  • Linux系統(tǒng)下搭建Java開發(fā)環(huán)境

    Linux系統(tǒng)下搭建Java開發(fā)環(huán)境

    本文主要是記錄了如何在Linux環(huán)境下一步步安裝JAVA JDK環(huán)境,非常簡單實用,有需要的朋友可以參考下
    2014-10-10
  • 關于log4j2的異步日志輸出方式

    關于log4j2的異步日志輸出方式

    這篇文章主要介紹了關于log4j2的異步日志輸出方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Redisson分布式鎖源碼解析

    Redisson分布式鎖源碼解析

    文章給大家分享了關于Redisson分布式鎖源碼相關的知識點內容,有興趣的朋友們可以參考學習下。
    2018-08-08
  • Java集合框架迭代器Iterator實現(xiàn)原理解析

    Java集合框架迭代器Iterator實現(xiàn)原理解析

    這篇文章主要介紹了Java集合框架迭代器Iterator實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • java關于調用方法的匯總

    java關于調用方法的匯總

    本文小編給大家整理了在Java中關于靜態(tài)調用和動態(tài)調用的方法匯總,值得大家學習和參考。
    2017-11-11
  • 如何配置feign全局log

    如何配置feign全局log

    這篇文章主要介紹了如何配置feign全局log,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java的MybatisPlus詳解

    Java的MybatisPlus詳解

    這篇文章主要介紹了Java的MybatisPlus詳解,MyBatis-Plus是一個 MyBatis的增強工具,在MyBatis的基礎上只做增強不做改變,為簡化開發(fā)、提高效率而生,需要的朋友可以參考下
    2023-07-07
  • Javaweb mybatis接口開發(fā)實現(xiàn)過程詳解

    Javaweb mybatis接口開發(fā)實現(xiàn)過程詳解

    這篇文章主要介紹了Javaweb mybatis接口開發(fā)實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • 利用JDBC的PrepareStatement打印真實SQL的方法詳解

    利用JDBC的PrepareStatement打印真實SQL的方法詳解

    PreparedStatement是預編譯的,對于批量處理可以大大提高效率. 也叫JDBC存儲過程,下面這篇文章主要給大家介紹了關于利用JDBC的PrepareStatement打印真實SQL的方法,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • idea插件在線和離線安裝方法

    idea插件在線和離線安裝方法

    這篇文章主要介紹了idea插件在線和離線安裝方法,文末補充介紹了IntelliJ IDEA 安裝mybaits當前運行sql日志插件在線與離線安裝方法
    ,感興趣的朋友一起看看吧
    2023-12-12

最新評論

灌南县| 泽库县| 新竹县| 胶州市| 建始县| 沈丘县| 永康市| 偏关县| 海晏县| 醴陵市| 南汇区| 图片| 吴旗县| 华阴市| 永新县| 泰宁县| 秦皇岛市| 桐庐县| 惠水县| 鄂托克前旗| 塔城市| 天台县| 南江县| 明光市| 丽江市| 鹤壁市| 西畴县| 曲周县| 延吉市| 金川县| 周至县| 额济纳旗| 楚雄市| 芮城县| 临安市| 龙海市| 清远市| 东安县| 瓮安县| 贡觉县| 台北县|