Git克隆导致很多nuget错误 - 怀疑我犯了太多错误

时间:2016-09-30 19:39:11

标签: git nuget atlassian-sourcetree

我有一个.NET解决方案,包含大约10个各种项目,MVC,libs和控制台应用程序。我们第一次在Git中使用它 - BitBucket和SourceTree。在我的本地计算机上工作正常,但是当我进行克隆时,为了测试它是否正常工作,我得到了大量的Nuget错误,缺少引用和更新包会收到有关已经存在的包的错误。一团糟。我的解决方案"是删除整个包文件夹并重新安装哪些工作,但不是一个合适的解决方案。所以我的问题是作为Git的新手,对于Nuget而言并不出色,在提交过程中我可能会出错。

我怀疑我没有正确排除文件 - Bitbucket上的项目很大,只有1GB。我认为.gitignore默认情况下排除了关键的构建文件,但我有点不确定哪些文件最好忽略,所以我可以查看.gitignore,看看实际上是什么推送到了Bitbucket。

缺少参考资料,那里发生了什么?是否可以复制DLL的本地问题?

任何帮助将不胜感激。希望这个问题不是太模糊吗?在某些方面,对我应该做的事情略高一些,只是一个有用的特定技术要点。

1 个答案:

答案 0 :(得分:0)

这是我目前在.gitignore中的相关部分:

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config

(我相信这个.gitignore是由Visual Studio生成的。)

重要的是忽略packages文件夹,但为每个项目提交packages.config文件。然后,您可以使用Visual Studio中的Restore Nuget packages菜单选项根据需要安装软件包。

如果您不小心提交了packages文件夹,那么要清理您当前的仓库,您可以这样做:

git rm --cached packages/*
git commit -m "Remove Nuget packages from repo"

然后,只要您已将packages文件夹添加到.gitignore文件中,就应该不错了。