草庐IT

Git 子模块或子存储库或远程?

我正在使用GIT来管理一个内容管理系统(CMS)项目。CMS可以有多个插件(模块)。所以基本上,我想要3种类型的存储库:核心CMS开发(每个新项目都是对最后一个稳定且未配置的版本的检查)每个模块/插件1个存储库。(每个新项目都会检查他们要实现的模块的最后一个稳定版本)每个项目1个存储库(每个客户端将是一个存储库,代表核心CMS和模块的个性化)对于类型1和2,我猜它是简单的基本存储库。但是当涉及到客户项目时,我感到困惑:首先我将克隆CMS,然后进入/modules/文件夹并再次克隆所有必需的模块?这将在存储库中创建一个存储库!第一个repo会尝试记录每个模块的.git/文件夹吗?我不能使

Git 子模块或子存储库或远程?

我正在使用GIT来管理一个内容管理系统(CMS)项目。CMS可以有多个插件(模块)。所以基本上,我想要3种类型的存储库:核心CMS开发(每个新项目都是对最后一个稳定且未配置的版本的检查)每个模块/插件1个存储库。(每个新项目都会检查他们要实现的模块的最后一个稳定版本)每个项目1个存储库(每个客户端将是一个存储库,代表核心CMS和模块的个性化)对于类型1和2,我猜它是简单的基本存储库。但是当涉及到客户项目时,我感到困惑:首先我将克隆CMS,然后进入/modules/文件夹并再次克隆所有必需的模块?这将在存储库中创建一个存储库!第一个repo会尝试记录每个模块的.git/文件夹吗?我不能使

Git:多个项目可以使用相同的子模块工作副本吗?

我是Git新手。比方说,我有两个git存储库,它们添加了相同的库作为子模块:/home/projects/project1/library_XYZ/home/projects/project2/library_XYZ还可以说,我正在同时处理项目和库。当我对库进行更改时,假设在/home/projects/project1/library_XYZ中,我将不得不推送这些更改,然后将它们pull入/home/projects/project2/library_XYZ使它们可用于project2,对吗?我认为这不方便,原因有二:我将不得不构建library_XYZ两次。我有一个不想要的冗余,与

Git:多个项目可以使用相同的子模块工作副本吗?

我是Git新手。比方说,我有两个git存储库,它们添加了相同的库作为子模块:/home/projects/project1/library_XYZ/home/projects/project2/library_XYZ还可以说,我正在同时处理项目和库。当我对库进行更改时,假设在/home/projects/project1/library_XYZ中,我将不得不推送这些更改,然后将它们pull入/home/projects/project2/library_XYZ使它们可用于project2,对吗?我认为这不方便,原因有二:我将不得不构建library_XYZ两次。我有一个不想要的冗余,与

git - 如何使带有分离 HEAD 的子模块附加到实际 HEAD?

当我像这样将Git子模块添加到Git存储库时,gitsubmoduleaddssh://server/proj1/proj1gitsubmoduleinitgitsubmoduleupdate添加的子模块将处于分离的HEAD模式。我不太清楚那是什么,但我知道子模块将链接到目标存储库的特定修订版。我不知道它到底是怎么工作的,反正看起来那里有一个代理分支。我通过切换到master分支解决了这个问题。cdproj1gitcheckoutmaster这将切换当前分支实际主HEAD,但这不会更新链接。因此,如果您再次克隆整个存储库,它仍将链接到旧版本。如果我想让它总是链接到最近的修订版(HEAD

git - 如何使带有分离 HEAD 的子模块附加到实际 HEAD?

当我像这样将Git子模块添加到Git存储库时,gitsubmoduleaddssh://server/proj1/proj1gitsubmoduleinitgitsubmoduleupdate添加的子模块将处于分离的HEAD模式。我不太清楚那是什么,但我知道子模块将链接到目标存储库的特定修订版。我不知道它到底是怎么工作的,反正看起来那里有一个代理分支。我通过切换到master分支解决了这个问题。cdproj1gitcheckoutmaster这将切换当前分支实际主HEAD,但这不会更新链接。因此,如果您再次克隆整个存储库,它仍将链接到旧版本。如果我想让它总是链接到最近的修订版(HEAD

Git子模块到子文件夹

在svn中,您可以将一个存储库链接到另一个svn存储库中的任何文件夹。我想知道git是否有类似的功能?基本上我想要我的存储库中有一个git子模块,但我希望该子模块是指向另一个git存储库的子文件夹的指针,而不是整个存储库。这可能吗? 最佳答案 Git不支持部分checkout,所以submodule必须指向一个完整的存储库。ThisthreadontheGitmaillist提供了一些背景信息。ThisarticlefromPantherSoftware提供了其他人试图实现类似目标的一些见解(即使用Git复制svn:external

Git子模块到子文件夹

在svn中,您可以将一个存储库链接到另一个svn存储库中的任何文件夹。我想知道git是否有类似的功能?基本上我想要我的存储库中有一个git子模块,但我希望该子模块是指向另一个git存储库的子文件夹的指针,而不是整个存储库。这可能吗? 最佳答案 Git不支持部分checkout,所以submodule必须指向一个完整的存储库。ThisthreadontheGitmaillist提供了一些背景信息。ThisarticlefromPantherSoftware提供了其他人试图实现类似目标的一些见解(即使用Git复制svn:external

git - 更改 git 子模块,并保留更改

我已经将我的一个库的一个git子模块克隆到我正在处理的项目中。问题是,在克隆之后,我需要更改克隆的子模块中的一些行,但我不想将这些更改推送到原始存储库中。我希望这些更改保留在super项目中。这可能吗?我怎样才能做到这一点?编辑:正如@GoZoner所说,基本上是:git克隆foo;cdfoo;git子模块初始化;git子模块更新;cdpath/to/submodule;gitcheckout大师;对子模块进行更改gitcommit-am"Something";gitpushorigin(super项目);然后,当我在另一台计算机上克隆super项目时(直到第4步),我希望将这些更改保

git - 更改 git 子模块,并保留更改

我已经将我的一个库的一个git子模块克隆到我正在处理的项目中。问题是,在克隆之后,我需要更改克隆的子模块中的一些行,但我不想将这些更改推送到原始存储库中。我希望这些更改保留在super项目中。这可能吗?我怎样才能做到这一点?编辑:正如@GoZoner所说,基本上是:git克隆foo;cdfoo;git子模块初始化;git子模块更新;cdpath/to/submodule;gitcheckout大师;对子模块进行更改gitcommit-am"Something";gitpushorigin(super项目);然后,当我在另一台计算机上克隆super项目时(直到第4步),我希望将这些更改保