C#/ Visual Studio:
WinSCP NuGet软件包的部分安装包括将WinSCP.exe添加到我的项目根目录。 (虽然我对我项目中的位置并不完全满意,但这不是我的问题)。如果我不需要,我宁愿不必在我的git repo中包含WinSCP.exe - 我可以将它添加到.ignore(因为这将在NuGet包恢复时添加)或者是有必要保留吗?
(总结 - 如果我使用WinSCP nuget包,我可以安全地告诉git忽略WinSCP.exe吗?)
答案 0 :(得分:3)
不幸的是,WinSCP NuGet包(目前版本为5.7.5)在Content目录中有WinSCP.exe。这意味着NuGet会将文件添加到项目中。
NuGet将无法恢复直接添加到项目中的文件。 NuGet恢复将恢复packages目录中的文件,但不恢复项目目录中的文件。
因此,您需要将文件添加到版本控制中,或者使用某种预构建步骤来下载NuGet包并提取文件。
但是,如果您没有使用WinSCP.exe,并且您只是使用WinSCP.dll,那么您可以在源代码控制中没有WinSCP.exe的情况下离开,但是您需要将其从项目中删除,否则您将获得构建错误。
答案 1 :(得分:0)
WinSCP 5.12 NuGet包supports PackageReference
package management,它可以解决问题。
PackageReference
package management。
转到工具> NuGet包管理器>包管理器设置>包管理。在默认包管理格式中,选择 PackageReference 。或者检查允许在第一个软件包安装时选择格式以允许按项目设置。