我有一个.NET解决方案,包含大约10个各种项目,MVC,libs和控制台应用程序。我们第一次在Git中使用它 - BitBucket和SourceTree。在我的本地计算机上工作正常,但是当我进行克隆时,为了测试它是否正常工作,我得到了大量的Nuget错误,缺少引用和更新包会收到有关已经存在的包的错误。一团糟。我的解决方案"是删除整个包文件夹并重新安装哪些工作,但不是一个合适的解决方案。所以我的问题是作为Git的新手,对于Nuget而言并不出色,在提交过程中我可能会出错。
我怀疑我没有正确排除文件 - Bitbucket上的项目很大,只有1GB。我认为.gitignore
默认情况下排除了关键的构建文件,但我有点不确定哪些文件最好忽略,所以我可以查看.gitignore
,看看实际上是什么推送到了Bitbucket。
缺少参考资料,那里发生了什么?是否可以复制DLL的本地问题?
任何帮助将不胜感激。希望这个问题不是太模糊吗?在某些方面,对我应该做的事情略高一些,只是一个有用的特定技术要点。
答案 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
文件中,就应该不错了。