문제
앱의 라이브 새 버전을 푸시할 때 릴리스 개정 번호 표시를 어떻게 처리하는지 궁금합니다.
당신이 사용할 수있는 $Rev$
최신 개정판을 얻으려면 파일을 업데이트해야 합니다. 단, 파일을 업데이트한 후에만 가능합니다.
저장소/디렉토리의 파일을 변경할 때마다 한 파일의 문자열을 업데이트하려면 어떻게 해야 합니까?
방법이 있나요?
해결책
후크를 사용해 보셨나요?서버 측에서만 작동하지만 트릭을 수행할 수도 있습니다.그렇지 않으면 키워드가 귀하에게 적합하지 않은 경우 수정본을 업데이트하는 스크립트를 호출할 것입니다.
다른 팁
이를 수행하는 가장 좋은 방법은 다음을 사용하여 개정 번호를 결정하는 릴리스용 빌드 스크립트를 갖는 것입니다. svnversion
또는 svn info
그리고 파일에 삽입합니다.다음과 같은 스크립트를 갖는 것이 항상 도움이 됩니다.
- 빈 디렉터리에 소스의 깨끗한 복사본을 체크아웃합니다.
- 용도
svnversion
또는 빌드 번호를 계산하는 것과 유사한 것 - 소스를 제품으로 컴파일
- 제품의 아카이브(zip 또는 tarball 등)를 생성합니다.
- 정리하다:아카이브를 제외한 모든 것을 삭제합니다.
그런 다음 쉽게 식별할 수 있는 버전으로 릴리스를 생성하는 1단계 프로세스가 있습니다.또한 소스 제어에 체크인되지 않은 변경 사항이 있을 수 있는 자신의 작업 복사본에서 빌드를 다른 사람에게 제공하는 것을 방지하는 데도 도움이 됩니다.
TortoiseSVN에는 다음과 같은 간단한 도구가 있습니다. SubWCRev.exe.에서 개정이 필요합니다. 길 자신의 템플릿에서 파일을 만듭니다.사전 빌드 명령으로 사용할 수 있습니다.
릴리스 빌드/배포의 일부로 파일을 자동으로 업데이트합니다.
내가 이렇게 할 이유가 있었던 한 프로젝트에서 나는 부정행위를 했습니다:그것은 전화한다 svnversion
시작될 때 자체적으로.
처럼 알렉산더 한 가지 방법은 빌드 프로세스의 일부로 개정판을 업데이트하는 것입니다.
이를 수행하는 한 가지 방법은 다음과 같은 도구를 사용하여 버전 제어 체크인에서 트리거된 자동화된 빌드 프로세스에서 릴리스 빌드를 가져오는 것입니다. 빌드봇.
Subversion 저장소의 포스트후크 스크립트를 사용하여 자동화된 빌드를 트리거하는 시나리오가 있을 수 있습니다.이렇게 하면 빌드봇이 가장 최근에 체크인된 개정으로 업데이트됩니다.빌드 스크립트(예:Makefile)은 'svnversion'(또는 'svn info' 및 grep)을 사용하여 저장소 개정판을 읽고 빌드가 발생하기 전에 이를 헤더 파일에 씁니다.
빌드가 성공적으로 완료되면 릴리스 버전에 대한 적절한 설명과 함께 이 파일을 저장소에 자동으로 다시 체크인합니다.