Ignore a folder during SVN updates

故事扮演 提交于 2019-12-03 02:39:02

问题


If I svn:ignore a really big folder will it improve performance during SVN updates?

I have this really massive (>600MB) folder in my project. The files in this folder should not be changing at all. The problem is that every time I call "svn update" it takes forever. Is there a way to ignore this folder during updates to speed up the update process?


回答1:


The svn:ignore is only for files that are not already in the Subversion repository. This folder already is.

You can use the svn update --set-depth exclude folderName to remove this folder from your working directory:

$ svn update --set-depth exclude bigFolder  #Removes "bigFolder" from workdir
D bigFolder

$

Next time you do an update, bigFolder won't show up in your working directory. If you want it back, you'll have to reset the depth:

$ svn update --set-depth infinity
U bigFolder
U bigFolder/File1
U bigFolder/File2
...



回答2:


You could do an svn update and specifically mention every other directory, e.g.

svn update dir1 dir2 dir3

Or, grep -v out what you don't want.

svn update `ls | grep -v big_dir`

Or, svn mv the big_dir up into another folder and change your build system to get the content from the other directory.




回答3:


Just do :

svn up `svn ls | grep -v big_dir`

Using "svn ls" You could update not only locally existing directories and files, but new files from repository. So, update is more complete, than just exclude. And You don't need to delete already existing files, like "--set-depth exclude" apparently does.




回答4:


Apart from what @Bill Brasky said, one suggestion is to move the huge folder into an external. That way you can do svn up --ignore-externals

If you don't want the huge folder in your working copy, you can have a look at sparse checkouts:

svn checkout repo . --depth empty
svn up other dirs


来源:https://stackoverflow.com/questions/5984625/ignore-a-folder-during-svn-updates

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!