问题标签 [multiple-repositories]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mercurial - 如何从不同的存储库中签出 mercurial 修订版?
在 git 中,如果您将两个远程存储库设置为default
andother
并且它们都包含cool-feature
分支但它们不同步,您可能会遇到这样的情况:
git checkout other/cool-feature
我可以通过and来回跳跃git checkout default/cool-feature
。
我如何在 Mercurial 中进行等效操作?甚至可能吗?
breeze - 如何在两个实体管理器之间轻松保存更改后导入实体
我用两个实体管理器实现了存储库模式,mainManager 用于只读和删除,updateManager 用于编辑和添加新实体。我使用 createEmptyCopy() 创建 updateManager。
在我更新实体之前,我从 mainManager 导出实体并导入到 updateManager,在更改之后我调用 updateManager.saveChanges() 方法。
我注意到我在承诺响应中取回了更新的实体。我想知道将这些实体导入 mainManager 的最佳做法是什么?
这是我的代码:
现在我正在调用 mainManager.clear() 并再次从服务器获取数据,正如您在上面的 getDomains 函数中看到的那样。但我认为这太过分了,如果我已经拥有 saveChanges 承诺中的更新实体,为什么还要调用服务器?
我还尝试使用以下方法将这些实体导入回 mainManager:
但我得到一个内部空微风异常:
错误来自这一行微风.debug.js:13081
git - Git:具有公共文件和代码的同一文件夹中的多个存储库
我正在考虑将大型代码库迁移到 Git。有许多团队在开发代码库,并且多个发布版本正在 [交错] 生产中。有些人将同时在 ReleaseBuild A 和 ReleaseBuild B 上工作,并且需要能够在使用同一文件夹时在构建存储库之间切换。每个版本构建存储库中的许多文件和文件夹将不同且许多相同。每个存储库都应该遵循自己的分支模型,就像这里看到的那样:http: //nvie.com/posts/a-successful-git-branching-model/。
用户需要使用同一个文件夹来构建文件的原因是构建脚本的设置方式和“安全性”。改变路径并不理想。我考虑过在单个模块中创建单独的子树,但这听起来很混乱。子模块听起来也很有趣,但我不确定如果我想使用一个而不是另一个并且两个子模块共享同一个文件夹,它们是否会起作用。
TLDR:有谁知道管理多个基线的好方法,这些基线使用相同的本地文件夹对它们进行并发工作?
git - 多个 Git 子模块共享同一个子文件夹?
我即将发布一些库,并希望生成如下内容:
并且仅对库进行版本控制(例如),如下所示:
维护子模块的主存储库(检出到“项目/资产”)
子模块 1(签出到“项目/资产”):
子模块 2(签出到“项目/资产”):
子模块 3(签出到“项目/资产”):
有没有办法设置这样的存储库结构?一些 gitignore 调整?或者还有其他一些 git 概念吗?一些“可维护”的东西。
你可能会问为什么:子模块 1 包含开源库,用户应该检查到他们的Project/Assets
文件夹。其他子模块包含封闭源代码/货币化库,而用户也应该像其他库一样签入Project/Assets
文件夹,而所有内容都应该排列在一个Project/Assets/AwesomeLibraries
文件夹中(有点“自动”)。
git - 在存储库 git 上同步变体
我试图弄清楚如何(如果可能)设置多个 git 存储库以特定方式运行。基本上,我们有多个客户端的多个存储库,但是它们都意味着共享一个系统目录。当对一个客户端的系统目录进行更改时,应该对所有客户端的系统目录进行更改。现在复杂的是,我们有多个用于 CI 开发系统的环境。我们目前有生产环境、客户端rev环境、qa环境和开发环境。这些可以很好地转换为不同的分支,因为这意味着当工作流被批准用于下一个环境时,我们可以将该工作流分支合并到适当的环境分支中,并将来自该工作流的更改添加到该环境中。
问题是我们的代码结构是这样设置的,我们有一个系统目录,它是我们的基本代码,一个自定义目录,其中包含客户端特定代码(包括用于替换系统代码中的文件的文件)和客户端特定配置目录。请注意,我们不是在一个使开发更加复杂的面向对象系统上,因为没有继承或扩展来使定制更容易。
我们的目标是将这个开发系统转换为 GIT。我们遇到的问题是维护该共享系统目录。我们已经尝试过子模块,但是子模块需要大量维护以防止覆盖或错误指向它们,并且由于确保客户端 qa 分支始终指向的工作量过多而繁琐,因此不能很好地与永久环境分支一起使用到系统子模块中的 qa 分支的主要提交,而不是到 WF 分支中的主要提交。
我们当前的 IDE 是没有子树集成的 eclipse(尽管我读到的子树是它们可以像子模块一样复杂)。我们真正需要的是跨多个被传播的存储库的并行分支。因此,例如,如果我在客户端 repo 中创建一个工作流分支,则会在系统 repo 和所有其他客户端 repo 中创建一个 WF 分支。当我进行更改并将该工作流合并到 qa 中时,系统 repo 的 wf 分支也会合并到 qa 分支中,但仅包含对系统文件夹的更改,而不是对自定义和配置目录所做的更改。
我想知道是否有一个好的结构来做这样的事情。我在其他网站和来源上读到的所有内容都说解决方案就是不要那样做,但是这个决定不是我做出的。上级决心保持我们现在的发展体系。
我的一个想法是看看是否有一种方法可以做一些类似直通的事情,我们创建一个只有系统模块的存储库。然后对于每个客户端,我们克隆该存储库并添加自定义和配置目录。然后,当我们进行开发时,我们会克隆该客户的存储库。我想知道是否通过这种方法,如果我们进行了更改并提交并推送到上游,这是否会将更改一直推送到顶级仓库。同样,当我们拉下更改时,如果我们可以从顶级回购中一路拉下来。另一方面,必须在客户端 repos 中设置 .gitignore ,这样当向上推送时它会忽略自定义和配置目录,但在向下游拉时它包括这些目录。
对此的任何想法将不胜感激。我们的代码主机也是一个私有的 gitlab 服务器。
对不起,这太长了,但我觉得我们有一个非常独特(不好)的系统,需要一些解释。
未来的 Git 用户
java - 如何在同一台 Windows 机器上使用具有相同帐户的多个存储库的 GIT
我有第一个 GIT 存储库 (ssh://git@myserver:7999/swlab/java_be_app.git) 用于我在一台机器上开发的 Java 后端应用程序和第二个 GIT 存储库 (ssh://git@myserver:7999 /swlab/dotnet_app.git) 用于我在另一台计算机上开发的 .NET 应用程序。是的,我正在使用 SSH 和“C:/Users/xxxxxxx/.ssh/id_rsa.ppk”文件,其中包含两个存储库的相同帐户的相同密钥。
现在,第二台计算机崩溃了:硬盘被 RIP,内存被炸,CPU 不再处理任何东西。而且我仍然需要在一台机器上继续开发这两个应用程序。我使用 TortoiseGit 作为我的 GIT 客户端。
将 2 个存储库合并到 1 个存储库不是一个选择,原因有很多:这是针对 2 个不同客户的 2 个不同应用程序,并且还存在非常严重的隐私、代码和数据安全问题。
如何在同一台 Windows 机器上使用相同帐户的两个存储库?
git - 如何将一个 github 存储库“挂载”为另一个存储库的子文件夹?
我有一个名为“foo”(或者更确切地说是“myusername/foo”)的 github 存储库。现在假设我要创建一个名为“bar”的存储库,它使用 foo 中的代码;我可以只制作文件的副本,但我不想拉更新 - 我只想现在只看到“foo”存储库中的任何内容;并且不要提交“来自 foo 的更新”。我相信我已经注意到一些存储库,其中的子文件夹实际上是单独的存储库;而且我知道 git 支持子存储库或类似的东西。那么,我可以执行这样的“存储库挂载”吗?如果是这样,怎么做?
如果我可以在某个版本或某个分支而不是 master 上拥有“挂载”,则可以加分
git - 我已经合并了一个 git(hub) 存储库的远程分支,但没有看到它可视化
有一些名为 foo 的 github 存储库,“user1”和“user2”(不是我)都在使用它。我有:
- 分叉
https://github.com/user1/foo
为https://github.com/myself/foo
- 克隆的
https://github.com/myself/foo
- 运行
git remote add user2-repo https://github.com/user2/foo
(它是早期版本的 user1/foo 的一个分支) - 跑了
git merge user2-repo/master
- 合并了吗
- 提交所有更改
- git push'ed 到 github (to
myself/repo
)
myself/foo
但是,如果我查看“网络”图 - 我看不到and之间有任何关系user2/foo
;如果我使用git gui
并可视化所有分支,我看不到从分支头部user2-repo/master
到master
分支的边缘,就像我期望根据这个答案看到的那样。
还有什么我需要做的吗?我看的不是正确的吗?我是否误解了应该发生的事情?
github - GitHub 管理多个存储库
我正在管理一个项目,场景是我需要首先检查我的团队编写的代码,然后在更正它之后,我需要将代码推送到客户端存储库中。
所以我认为应该有两个存储库,一个是给我们的,另一个是客户端存储库,它将拥有最终的干净代码。
现在,当我在客户端存储库上推送代码时,它显示了我们在存储库中不想要的所有提交。
如何在一个项目文件夹中单独管理两个存储库?