您是向SVN提交一个完整的web目录,还是执行一些异常(大型二进制文件)?

您是向SVN提交一个完整的web目录,还是执行一些异常(大型二进制文件)?,svn,version-control,video,Svn,Version Control,Video,我指的是视频 我在我的网站上有相当多的视频,因为我确实提交了所有带有源的图片,我对提交视频和档案(大小在10MB到300MB之间)有严重的怀疑 这样做有什么意义吗?SVN是关于资源的。在大多数情况下,它不是存放内容或二进制文件的地方,因此此类文件通常不应传递给SVN。 但是我可能会把它放在SVN中,如果它很难复制购买所有开发人员使用的测试数据。SVN是关于源代码的。在大多数情况下,它不是存放内容或二进制文件的地方,因此此类文件通常不应传递给SVN。 但是我可能会把它放在SVN中,如果很难复制购买

我指的是视频

我在我的网站上有相当多的视频,因为我确实提交了所有带有源的图片,我对提交视频和档案(大小在10MB到300MB之间)有严重的怀疑


这样做有什么意义吗?

SVN是关于资源的。在大多数情况下,它不是存放内容或二进制文件的地方,因此此类文件通常不应传递给SVN。
但是我可能会把它放在SVN中,如果它很难复制购买所有开发人员使用的测试数据。

SVN是关于源代码的。在大多数情况下,它不是存放内容或二进制文件的地方,因此此类文件通常不应传递给SVN。
但是我可能会把它放在SVN中,如果很难复制购买所有开发人员使用的测试数据。

很可能你不想跟踪你对视频所做的更改,所以我会尝试为他们找到其他地方。

很可能你不想跟踪你对视频所做的更改,因此,我会尝试为他们找到其他地方。

我当前的项目是一个ASP.Net MVC应用程序,它使用多个第三方程序集,我已将这些程序集放置在svn中,以便开发人员可以随时获取最新版本,并将拥有所有构建脚本和库以及构建应用程序所需的代码。DLL被放置在lib文件夹中,所有VisualStudio项目都可以基于相对路径访问这些DLL。这样做的好处是,在标记代码时,所有依赖库都与使用它们的代码一起存在,因此如果我需要回滚到以前的版本,该版本使用的是我更新后的库的旧版本,我仍然可以获得正确的版本。我认为这对于构建应用程序所需的与开发人员相关的文件非常有效,以便可以轻松地使用自动化构建和持续集成。这对我来说也很有效,我们在一个分布式团队中从事这个项目


然而,我确实觉得像视频这样的文件和任何300MB大小的文件都无法添加到任何版本控制系统中。在我过去工作过的一些项目中,有一个服务器用于保存所有媒体文件,然后将这些文件作为自动化脚本的一部分复制到测试和生产环境中。

我当前的项目是一个ASP.Net MVC应用程序,它使用我在svn中放置的多个第三方程序集,以便开发人员可以获得最新版本,将包含所有构建脚本和库以及构建应用程序所需的代码。DLL被放置在lib文件夹中,所有VisualStudio项目都可以基于相对路径访问这些DLL。这样做的好处是,在标记代码时,所有依赖库都与使用它们的代码一起存在,因此如果我需要回滚到以前的版本,该版本使用的是我更新后的库的旧版本,我仍然可以获得正确的版本。我认为这对于构建应用程序所需的与开发人员相关的文件非常有效,以便可以轻松地使用自动化构建和持续集成。这对我来说也很有效,我们在一个分布式团队中从事这个项目

然而,我确实觉得像视频这样的文件和任何300MB大小的文件都无法添加到任何版本控制系统中。在我过去参与的一些项目中,有一台服务器用于保存所有媒体文件,然后作为自动化脚本的一部分复制到测试和生产环境。

不要将版本控制系统和某种内容管理系统混用

您需要将一些视频或档案链接到VCS管理源的特定状态,但我怀疑一个给定的视频最终会有多个版本。
如果这些二进制文件没有及时演变(或很少演变),VCS就不是适合它们的存储库。
例如,Maven repo(可以记录任何类型的工件)可以与SVN repo很好地结合使用。

不要将版本控制系统和某种内容管理系统混用

您需要将一些视频或档案链接到VCS管理源的特定状态,但我怀疑一个给定的视频最终会有多个版本。
如果这些二进制文件没有及时演变(或很少演变),VCS就不是适合它们的存储库。
例如,Maven repo(可以记录任何类型的工件)可以与SVN repo很好地结合使用