본문 바로가기

Management/Linux

svnversion

tingcobell@linux-krg:~/data/weonline> svnversion --help
사용법: svnversion [OPTIONS] WC_PATH [TRAIL_URL]

  작업 사본 WC_PATH에 대하여 축약된 'version number'를 출력합니다.
  TRAIL_URL 은 URL의 뒤에 오는 부분으로서, WC_PATH가 태그/브랜치로
  전환되었는지 판단하기 위한 부분입니다. (WC_PATH 내에서의 태그/브랜치
  전환 여부 판단은 TRAIL_URL과 연관성 없이 진행됩니다) 버전 번호는
  표준 출력에 씌여집니다. 예를 들어,

    $ svnversion . /repos/svn/trunk
    4168

  작업사본이 단일 리비전에, 수정되지 않고, URL 전환된적이 없고,
  TRAIL_URL 값과 URL이 일치하면, 리비전은 하나의 숫자로 가능합니다.
  그러나, 작업 사본이 평범하지 않으면 버전 번호는 좀 더 복잡합니다.

   4123:4168     혼합된 리비전의 작업 사본
   4168M         수정된 작업 사본
   4123S         전환된 작업 사본
   4123P         듬성듬성 체크아웃한 작업 사본의 일부
   4123:4168MS   혼합된 리비전의 수정되고 전환된 작업 사본

  작업 사본이 아닌 디렉토리에서 수행되면, 예를 들면 익스포트된 디렉토리라면
  화면에 '"exporeted"라고 출력한다.

  만약 인자 없이 수행된다면, WC_PATH는 현재 디렉토리를 나타냅니다.

가능한 옵션:
  -n [--no-newline]        : 맨 뒤의 개행 문자를 출력하지 않습니다.
  -c [--committed]         : 현재 리비전 대신 마지막 커밋된 리비전을 출력
  -h [--help]              : 이 도움말을 출력함
  --version                : 프로그램 버젼 정보를 보여줍니다


사용할 수 있는 방법이 여러 가지 있겠지만


----

보통 사용하는 방법중에 지금 빌드되서 서비스는 되는 버전이 최근의 버전인지 아니면 패치로 인한 실수(?) 인위적인인실수(?) 각각의 어떠한 이유에 의해 실수가 벌어졌다면, "현재 서비스되고 있는 릴리즈 버전에 대해서 최신의 버전이라 말할 수 있는가?" 라는 주제에서 시작해보겠습니다.

자동화로 인해 사람의 손이 묻지 않고 패치 되는 시스템이라면 어느 한도까지는 믿을 수 있을 꺼라 생각을 합니다. 허나 그것 또한 사람이 만든것이기 때문에 100% 확신은 할 수 없다는 점입니다. 이로 인해 피해가 하나 둘씩 조금씩 조금씩 사람을 좀먹게 하는 이유일지 모르겠습니다. 안전하다 이상이 없다라고 믿음이 가기 시작하면 어떠한 이유인 즉, 무조건 신뢰하는 문제점을 가지고 있죠. 이렇기 때문에 패치 후 사람이 눈으로 확인할 수 있는 일정의 모니터링 툴이 존재 하면 자동화에 대한 믿음과 한번더 나아가 사람이 눈으로 확인하여 100%가 아니더라도 믿을 수 있는 시스템을 구성해야 한다는 점입니다. 자 그럼 어떻게 하면 우리들이 이 릴리즈 버전에 대해서 믿을 수 있는지 간단하게 풀어볼까 합니다.

재일 간단한 방법으로는 현재 소스를 관리하고 있는 subversion 즉, 위에서 설명하고 있는 내용을 가지고 소스에 대한 버전을 표시하므로 현재 어디까지 소스가 포함이 되어 있는지 확인을 할 수 있는 시스템을 구축하는 것입니다. 이로 인해 작업자는 그 버전을 가지고 다시 한번 확인할 수 있는 기회를 얻으므로 인해 보다 안전하게 서비스 할 수 있다는 점입니다. 내용 정리해서 샘플 예제는 따로 올리겠습니다.

'Management > Linux' 카테고리의 다른 글

svn repository 생성 및 복구.  (0) 2010.03.27
virtualbox Bridge 생성  (0) 2010.03.27
[Ngrep] 사용법  (3) 2009.02.21
[ Ngrep ] Ngrep 정의  (0) 2009.02.21
[svn] SVN 복구 방법.  (0) 2009.02.21