2009-06-29 3 views
1

어디에서나 볼 수 있습니다. 설명서, 웹 사이트, 도움말 화면에서 이름을 지정하십시오.
왜?
사용해야합니까?
어떻게?

답변

1

아마 '$ Id $'의 확장 버전 일 것입니다. RCS 버전 제어 시스템의 기원을 가지고 있으며 많은 다른 것들 (CVS와 SVN은 제외)에서 상속되거나 구현되었습니다.

기본적으로 소스 코드에 '$ Id $'를 어딘가에 붙이면 버전 제어 시스템은 모든 체크 아웃에서 현재 버전을 포함하는 ID 문자열로 확장합니다.

그런 다음 소스 코드를 보면 소스 코드가 어떤 개정판이나 분기인지 알 수 있습니다.

개인적으로 나는 그렇게 유용하다고 생각하지 않습니다. $ 아이디 $ 사용할 수 많은 같은 문자열 중 하나입니다 http://ximbiot.com/cvs/manual/cvs-1.11.6/cvs_12.html

참고 : 여기에

은 키워드 대체를위한 CVS 문서입니다.

+0

... $ Revision $ 인 문자열 중 하나가 ... –

3

태그는 아마도 CVS의 것으로 CVS에있는 해당 파일의 버전을 나타냅니다. 개발자는 코드에 $ Revision $을 삽입합니다. 커밋되면 CVS는이를 $ Revision : 1.2.3 $로 확장합니다. 필자는 최소한 일반적인 소스 코드에서는 $ Id $와 같은 친구 나 그 친구를 사용하지 않아야한다.

전체 트리에 대해 하나의 버전 번호를 가진 최신 소스 제어 시스템 (SVN, Mercurial, git, monotone)을 사용하는 경우 해당 번호를 포함하는 빌드 어딘가에 파일을 저장하는 것은 나쁘지 않습니다 물건 -이 페이지의 오른쪽 하단과 같은 것을 할 수 있습니다. 지금은 "svn revision : 3772"라고되어 있습니다.

그러나 CVS와 같은 항목이있는 경우 각 파일마다 고유 한 버전 번호가있는 경우 각 파일에 $ Revision $ (또는 $ Id $ 등)이 생깁니다. 시간이 지남에 따라 혼란이 야기됩니다 (사람들은 예를 들어 하나의 파일 만 참조하는 버전 번호를 인용합니다). 그렇지 않으면 깨끗한 병합이있는 곳에서 병합 오류가 발생합니다 (원격 버전은 로컬 버전과 다른 행 버전을 갖습니다. 합병이 위로 올라간다).

게다가 프로그래밍 방식으로 자동으로 소스 코드를 변경하는 모든 사항은 의문의 여지가 있어야합니다.

0

왜?

"고객에게 제공된 바이너리와 일치하는 소스 코드의 버전은 무엇입니까?"라는 질문에 대답하려는 시도입니다. 그것이 다른 사람들에게 어떻게 작용하는지에 대해 논평했습니다.

사용해야합니까?
어떻게?

필요합니까? 개발자 또는 개발자가 얼마나 자주 해당 질문을 했습니까? 얼마나 자주 응답에 어려움이 있습니까? release-1.0, release-1.1 등의 태그/가지가 이미있는 경우에는 필요하지 않습니다.