问题标签 [externals]
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.
svn - 颠覆 - svn:externals 应该从哪里来?
我将在这里建立一个规则,所有的 svn:externals 引用都应该来自另一个项目的标签,而不是来自它的主干或任何分支。这是一个合理的规则,还是您认为这种方法存在问题/问题?我正在努力实现一个稳定的开发环境,我想知道这条规则是否会使开发变得更慢或更困难。
svn - “svn list”忽略外部
我在我的 SVN 树中有一个名为“库”的目录,它使用外部加载库,例如 zend framework/smarty/....
我使用一个使用“svn list”的自写工具,我可以在其中选择应该上传到服务器的文件,看起来
svn list 不加载外部道具,因此库目录为空,这意味着我无法使用我的工具上传库
所以问题是:是否有任何选项可以让“svn list”也加载外部?
谢谢
svn - 帮助理解 SVN Externals
我正在为我的公司寻找 svn externals,它似乎对我们来说是一个很好的功能。我们有几个产品经常引用共享组件,但有一个坏习惯,即有时会落后于旧版本甚至不同分支的代码库。
我已经阅读了一些关于它们现在如何工作的内容,我想我理解这个概念还可以。我不能 100% 确定多个存储库的不同版本如何链接在一起。
假设我有一个产品和一个库。该产品是针对库构建的,因此其 repo 具有链接到库源的 svn:externals 属性。在 svn:externals 定义中没有特定版本的情况下,当我检查产品的 HEAD 时,我也会得到库的 HEAD。
多年来,我构建了多个版本的产品,每次都引用最新版本的库。有一天,尽管我必须通过手动选择正确的修订版返回并检查产品版本 1。当我这样做时,我会得到哪个版本的库,HEAD 还是我第一次构建它时使用的修订版?
希望我是一名优秀的开发人员,并记得标记我发布的每个产品版本。当我将标签“Product-1-0-0”应用于存储库时,库存储库的正确修订版是否也会被标记?如果我稍后根据标签“Product-1-0-0”检出产品,是否会检出库的正确版本?
svn - 将外部项目中的文件添加到本地项目
我正在使用 svn:external 来获取 Nlog 和 Lucene.net 等项目。他们没有 vs2008 csproj 文件。我可以轻松地创建一个,这样我就可以将它添加到其他项目中。现在是否可以将这个 2008 年的项目文件添加到我们的内部源代码管理中?
svn - svn externals ...是或否?
我在这里阅读了一些谴责使用 svn:externals 的答案。我确实看到了它们是如何被滥用的,它确实使我们更加依赖 Subversion,但我真的不认为我们的团队很快就会放弃它。
无论如何,这是我的困境。我们有引用多个项目的解决方案,这些项目位于存储库自己的部分中。其中许多项目在多个解决方案之间共享,我们也不想排除共享我们的项目。我们还将几个固定版本的依赖项签入到我们的存储库中(单元测试框架、库等)。
我想配置几个只使用外部的“工作区”(就 Subversion 而言,它们只是空目录,或者可能包含单个解决方案文件)来为我们的开发人员配置解决方案。单独检查大多数项目不足以构建它们,但检查它的工作区就足以构建它,因为它的所有依赖项都会随之而来。有没有其他人实施过类似的解决方案,svn:externals 是解决这个问题的好方法吗?如果我们走这条路,你对我有什么警告?
基本上结构看起来像这样(为简洁起见,省略了主干/分支/标签):
svn - 覆盖以前删除的文件时,Subversion 的“懒惰复制”是否仍然懒惰?
覆盖以前删除的文件时,Subversion 的“懒惰复制”是否仍然懒惰?
我将我的外部文件存储在每个版本的单独文件夹中:即说对于 dojo,我将拥有:
等等。通过这样做,至少对我来说,我觉得切换到新版本更容易。
通过只添加每个新版本,我并没有真正给 svn 提供它需要做惰性副本的历史。所以我使用的一种策略是
- svn 将旧版本复制到新版本的位置
- 然后 svn 删除整个文件夹
- 然后将我的新版本解压到那个地方
- 然后 svn 添加它们
这样做是为了避免在我的存储库中有大量重复数据。
我希望 svn 正在查看新文件并说,
“嘿,我已经有过一次,复制,然后删除......所以我会很懒,只存储更改”。
那是我的理论——但这在实践中会发生吗?
ps 是的,我知道另一种方法是设置“文件夹的外部属性” - 但这是另一个问题。
svn - 不要在 svn 状态中显示 svn:externals
我svn:external
在我的存储库中做了一个。一切正常,除了svn status
命令的输出。在输出中有很多我不需要的信息:
我可以运行svn st --ignore-externals -q
并且可以将此行放在一个小脚本中,但也许有更好的解决方案。如何在不查看外部信息的情况下查看我的工作副本的状态?
c# - Svn externals 和 c# 程序集 - 不兼容?
.net 中应该如此简单的东西似乎太难了。
我有一个名为 MyExtenders 的项目,其中包含一些基本类型的简单扩展程序。
许多项目使用 MyExtenders - 因此在传统的 svn 签出和构建方法中,我将 MyExtenders 添加为 svn:external,并将修订锁定到上次构建和测试的版本。
现在,如果我有两个项目都需要将 MyExtenders 添加到同一个解决方案中,那么这一切都会归为一堆。我不能将两个 MyExtenders 添加到解决方案中 - 所以我必须只使用一个 - 在不同修订的情况下意味着使用它重新测试旧项目。
一张图可能最好地解释了依赖关系:
Delphi/C 可以很好地使用上述内容 - 所有引用都来自他们自己的项目文件夹。
VS 坚持丢失目录结构并将上面的内容扁平化为:
我被迫修改其中一个项目以引用不同的 MyExtenders,以及不同的修订版。
显然我做错了..但你怎么做对了?
mercurial - 是否可以将 Mercurial 子存储库与特定版本挂钩(如 svn:externals)?
我正在将一组项目从 Subversion 迁移到 Mercurial。这些项目目前使用 svn:externals 将代码从一个拉到另一个。我一直遵循将外部指向特定修订号并根据需要手动更新它的建议(这样当我更新到主项目的过去修订时,我也会获得外部的过去版本)。
在 Mercurial 中进行外部操作的方法似乎是使用子存储库,但我看不到将它们与特定修订版挂钩的方法 - 看起来 Hg 总是会在我更新主存储库时将子存储库更新为最新修订版。那是对的吗?有没有办法解决它?
asp.net - 在 Visual Studio 2010 Web 项目中包含指向外部资源的链接
我有一个依赖于 FreeImage .NET 包装器的 ASP.NET 项目。这是使用对外部目录的引用加载的。包装器依赖于存在的 FreeImage.dll 来工作(显然)。
如何让 Visual Studio 包含对 FreeImage dll 的引用。它不是 .NET 程序集,我认为它是在其他东西中构建的(所以我不能将它添加为参考)。
我真的不想拥有这个项目的副本,因为这些文件位于不同的 SVN 存储库中