【问题标题】:Is symbolic link between two git repositories possible?两个 git 存储库之间的符号链接是否可能?
【发布时间】:2020-09-15 17:06:49
【问题描述】:

我浏览了一些关于这个主题的文档,我真的对 git 子模块以及它如何实现符号链接感到困惑。

以下是我必须实现的方案: 我有两个 GitHub 存储库 repoArepoB。 我必须将repoA 中的一些文件链接到repoB,这样每当repoA 中的这些文件发生更改时,它也应该反映在repoB 上。

我的第一个问题是——这在 GitHub 上可行吗? 如果可能,我们怎样才能做到这一点?

我浏览过的大多数文件至少是 5 年前的。我知道这是一个老问题,但我只想知道现在是否有可能完成这项任务。

【问题讨论】:

  • 您在使用子模块时遇到了哪些具体问题?
  • 我创建了 repoB 的 master 分支作为 repoA 的子模块。但我的困惑是,如果我们在子模块(repoB 的主分支)中提交任何更改,它是否也会反映在 repoA 的子模块中?因为它不会发生在我身上! @CH。
  • 子模块不会自动同步到远程,就像普通的 git 存储库在没有拉取的情况下不会同步到远程一样。根据您的安排,您可能需要执行git submodule update --remote 之类的操作来集成最新更改。

标签: git github version-control repository github-pages


【解决方案1】:

我浏览了一些关于这个主题的文档,当大多数文档在询问符号链接时以创建子模块结束时,我真的很困惑。

而且文档是正确的。您想要实现的场景可以通过子模块和另一种方法实现。 GitHub 本身不提供任何功能来实现您想要做的事情。

要对子模块执行此操作,您需要做的就是添加子模块并使用它。不时更新子模块以跟踪子模块上游的更改并将这些更改与工作树的master同步。

我知道子模块一开始可能有点吓人,但它们是一个很棒的工具!另一种解决方案是将所需的存储库克隆到您的工作树中,并在需要时从其上游拉取更改。不过,这不会在工作树和新仓库中创建符号链接。

最好的

【讨论】:

  • 我已经创建了 repoB 的 master 分支作为 repoA 的子模块。但我的困惑是,如果我们在子模块(repoB 的主分支)中提交任何更改,它是否也会反映在 repoA 的子模块中?因为它不会发生在我身上!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-04
  • 2014-03-31
  • 2013-06-04
  • 2014-05-09
  • 1970-01-01
  • 2018-06-27
  • 1970-01-01
相关资源
最近更新 更多