2014-12-17 20 views
2

svn으로 큰 프로젝트를 체크 아웃하는 데 시간이 좀 걸리므로 --quiet 또는 (-q)으로 설정하면 궁금한 점이있어서 메시지가 더 빨리 인쇄되지 않습니까? 아니면 그 일과 관련이 없습니까?체크 아웃 (공동) 프로젝트가 svn에서 더 빠를 때 --quiet?

+3

흥미로운 답변 집합입니다. 최선의 아이디어는 환경에 의존 할 가능성이 높으므로 스스로 측정하는 것입니다. * nix에서는'time' 명령을 사용할 수 있으며 Windows에서는 Powershell의'Measure-Command' cmdlet을 사용할 수 있습니다. –

답변

0

다릅니다. 병목 현상이 서버에서 파일을 검색하는 경우 아무런 차이가 없습니다. 그러나 콘솔이 느리면 제한 요소는 터미널에 라인을 얼마나 빨리 낼 수 있는지에 있습니다.

일반적인 경우에는 차이가 없지만 느린 링크를 통해 원격 컴퓨터로 SSH 연결하고 거기에 작은 파일이 많은 로컬 저장소로 연결되는 경우가 있습니다.

1

Definitelly YES 표준 출력을 사용하면 항상 모든 프로세스가 느려집니다. 나는 덤프,로드 및 물론 체크 아웃을하고 최근에 10-15GB의 데이터를 커밋했으며 항상 -q로 만들었습니다. 프로세스 시간이 실제로 너무 길어 졌기 때문입니다.

1

VT100 terminalBAUD 300 또는 Teletype terminal 인 경우를 제외하면 --quiet 옵션은별로 좋지 않을 것입니다. 터미널에서 파일을 서버에서 가져 오는 것보다 빨리 체크 아웃하는 것으로 표시됩니다.

1.7보다 이전 버전의 Subversion을 사용하고 있고 Windows를 사용하는 경우 Subversion에서 다운로드 한 파일을 검색하는 바이러스 백신 프로그램에 문제가있을 수 있습니다. 이전 버전의 Subversion에서는 각 파일이 두 번 다운로드되었습니다. 한 번 작업 디렉토리에 넣고 .svn 디렉토리 아래에 기본 버전으로 서버를 사용하지 않고 svn diff 할 수 있습니다. 많은 Windows 사용자가이 문제로 인해 체크 아웃 속도가 느리다는 불만을 제기했습니다. 1.7 또는 1.8로 업데이트하면 Windows 체크 아웃이 훨씬 빨라집니다.


당신은 당신은 당신이 원하는 파일을 체크 아웃 스파 스 체크 아웃을 시도 할 수 있습니다. 예를 들어, 우리는 분기를 해제 할, 나는 쉽게 단순히 전체 지점, 다음 갱신 내가 일하고 있어요 단지 프로젝트 체크 아웃 찾을 :

$ svn co --depth=immediates $RSVP/branches/5.2 

이 전체 지점을 확인하고 모든 그 브랜치의 프로젝트는 브랜치의 바로 아래에있는 디렉토리들만 포함합니다. 나는 프로젝트 이름을 얻지 만, 프로젝트 밑에는 아무것도 체크 아웃하지 않는다. 이제 내 vibortz 프로젝트를 업데이트해야합니다.

$ svn up --set-depth=infinity 5.2/vibortz 

이제이 하나의 프로젝트에있는 모든 파일이 체크 아웃됩니다. 너는 이것을 더 취할 수있다.

$ svn up --set-depth=immediates 5.2/vibortz 
A docs 
A src 
A dependencies 

나는 워드 프로세서 또는 의존성에 관심이 아니지만, 나는이 프로젝트의 버퍼 코드에 관심이 : (! Infact는, 전체 지점)

$ src up --set-depth=infinity 5.2/vibortz/src/buffer 
A src/buffer 
A ... 

내가 전체 프로젝트를 가지고 Subversion 작업 디렉토리이지만 실제로 관심이있는 파일 만 체크 아웃합니다. 나는 추가 디렉토리를 볼 수 있습니다.

대개 체크 아웃에 너무 오래 걸리는 프로젝트에 대해 들었을 때, 컴파일 된 바이너리가 프로젝트에 체크인 되었기 때문에 (이는 아니요,하지만 여기서는 들어 가지 않습니다). 전체 프로젝트를 체크 아웃하고 싶지만 바이너리는 필요 없습니다. 다시 말하지만 스파 스 체크 아웃이 도움이 될 수 있습니다. 가정 BASH :

$ shopt -s extglob # Kornshell users don't have to do this... 
$ cd vibortz 
$ src up --depth=infinity !(binaries) 

!(binaries) 제외 :

$ src up --set-depth=infinity vibortz/source vibortz/resources 

나는 모든 디렉토리 제외 바이너리를 원하는 경우, 나는이 작업을 수행 할 수 있습니다 : 난 그냥 자원과 소스를 원하는

$ src co --depth=immediates $URL/trunk/vibortz 
A vibortz/binaries 
A vibortz/docs 
A vibortz/resources 
A vibortz/source 

내 업데이트 binaries 디렉토리. 바이너리를 제외한 모든 디렉토리 이 업데이트되고 확장됩니다.