从 git 签出后缺少 nuget dll
nuget dlls missing after check-outing from git
我有一个包含不同项目的 C# 解决方案。在这些项目中,我有一些正常的 nuget 包,如 Newtonsoft.Json、EntityFramework 等。但是当我在另一台机器上检查我的源代码并构建它时,它不会复制 Dlls
我已将整个解决方案文件夹提交给 git,我可以在 Bitbucket 中看到包文件夹和内容。我做错了什么?
P.S:我知道我可以 运行 下面来恢复我的包,但那是一个很大的痛苦。
P.S.S:我搜索并看到了this and this。我正在寻找一种方法来防止它再次发生
nuget install packages.config
使用 NuGet 的惯用方式(与 npm 不同,例如,通常提交 node_packages
)是仅提交您的 packages.config
。 Visual Studio 将检测 packages/
文件夹中丢失的包并在构建时恢复它们,nuget restore
在命令行中将执行相同的操作。
原因是二进制文件比文本文件大,而且不可区分(即不可能存储增量)。我不确定 git 是否像 svn 那样工作,但 nuget 的作者并不仅仅为那些使用 git.
的人写作
如果您担心包裹丢失,我有两点:
- Nuget.org 非常小心这是不可能的。他们已经设置好只能软删除包,这意味着恢复可以看到这些版本,而
nuget install
不会。
- 许多人 运行 他们自己的内部包服务器(如 Klondike)充当 nuget.org 的一种代理。如果您想打包内部库并使用 nuget 将它们分发到您的项目中,而不将它们发布到 Internet,这也很有用。
我有一个包含不同项目的 C# 解决方案。在这些项目中,我有一些正常的 nuget 包,如 Newtonsoft.Json、EntityFramework 等。但是当我在另一台机器上检查我的源代码并构建它时,它不会复制 Dlls
我已将整个解决方案文件夹提交给 git,我可以在 Bitbucket 中看到包文件夹和内容。我做错了什么?
P.S:我知道我可以 运行 下面来恢复我的包,但那是一个很大的痛苦。 P.S.S:我搜索并看到了this and this。我正在寻找一种方法来防止它再次发生
nuget install packages.config
使用 NuGet 的惯用方式(与 npm 不同,例如,通常提交 node_packages
)是仅提交您的 packages.config
。 Visual Studio 将检测 packages/
文件夹中丢失的包并在构建时恢复它们,nuget restore
在命令行中将执行相同的操作。
原因是二进制文件比文本文件大,而且不可区分(即不可能存储增量)。我不确定 git 是否像 svn 那样工作,但 nuget 的作者并不仅仅为那些使用 git.
的人写作如果您担心包裹丢失,我有两点:
- Nuget.org 非常小心这是不可能的。他们已经设置好只能软删除包,这意味着恢复可以看到这些版本,而
nuget install
不会。 - 许多人 运行 他们自己的内部包服务器(如 Klondike)充当 nuget.org 的一种代理。如果您想打包内部库并使用 nuget 将它们分发到您的项目中,而不将它们发布到 Internet,这也很有用。