티스토리 뷰

Tools

CVS Comments added to Code

Su-Dong, Han 2012. 7. 26. 11:01


CVS를 사용하면 각 파일별 History 조회를 통해 변경에 대한 Comments를 확인할 수 있습니다.

하지만 별도의 로그를 확인하는 과정이 필요하기 때문에 CVS에 수정된 소스를 commit 할때

입력한 Comments를 소스에 추가해주는 방법이 있습니다.

** 저의 경우 로컬환경의 한글 encoding 값이 달라 자동으로 추가도니 comments의 한글이 깨지면서

    컴파일 오류(or 런타임 오류)가 발생한 경우가 있습니다.

    한글 comments 사용을 위해서는 초기에 encoding을 명확히 정의하고 통일할 필요가 있습니다.


참고사이트


다음과 같은 주석을 포함한 소스를 수정한 후 CVS에 commit을 합니다.

/*
 *************************************************************************
 * @source  : cvs.jsp
 *------------------------------------------------------------------------
 *   DATE        AUTHOR   DESCRIPTION
 * ----------- -------- -------------------
 * 2012.07.26      CVS      최초작성
 *------------------------------------------------------------------------
 * XXX 프로젝트
 * Copyright(c) 2012 XXX,  All rights reserved.
 *************************************************************************
 * $Id$
 * $Log$ 
 *************************************************************************
 */


그러면 다음 코드처럼 주석에 해당 파일면, 변경일자, 변경자 ID, comments가 추가된 주석을 확인할 수 있습니다.


/*
 *************************************************************************
 * @source  : cvs.jsp
 *------------------------------------------------------------------------
 *   DATE        AUTHOR   DESCRIPTION
 * ----------- -------- -------------------
 * 2012.07.26      CVS      최초작성
 *------------------------------------------------------------------------
 * XXX 프로젝트
 * Copyright(c) 2012 XXX,  All rights reserved.
 *************************************************************************
 * $Id: cvs.jsp,v 1.1 2012/07/26 10:56:52 cvs Exp $
 * $Log: cvs.jsp,v $
 * Revision 1.1  2012/07/26 10:56:52 cvs
 * comments 내용
 *************************************************************************
 */


아래는 적용가능한 속성 리스트 입니다. 추가 내용은 참고사이트를 확인해 주세요~ ^^


`$Author$'   
     The login name of the user who checked in the revision.   
    
`$Date$'   
     The date and time (UTC) the revision was checked in.   
    
`$Header$'   
     A standard header containing the full pathname of the RCS file,   
     the revision number, the date (UTC), the author, the state, and   
     the locker (if locked).  Files will normally never be locked when   
     you use CVS.   
    
`$Id$'   
     Same as `$Header$', except that the RCS filename is without a path.   
    
`$Name$'   
     Tag name used to check out this file.  The keyword is expanded   
     only if one checks out with an explicit tag name.  For example,   
     when running the command `cvs co -r first', the keyword expands to   
     `Name: first'.   
    
`$Locker$'   
     The login name of the user who locked the revision (empty if not   
     locked, which is the normal case unless `cvs admin -l' is in use).   
    
`$Log$'   
     The log message supplied during commit, preceded by a header   
     containing the RCS filename, the revision number, the author, and   
     the date (UTC).  Existing log messages are _not_ replaced.   
     Instead, the new log message is inserted after `$Log:...$'.  Each   
     new line is prefixed with the same string which precedes the   
     `$Log' keyword.  For example, if the file contains:   
    
            /* Here is what people have been up to:  
             *  
             * $Log: frob.c,v $  
             * Revision 1.1  1997/01/03 14:23:51  joe  
             * Add the superfrobnicate option  
             *  
             */  
    then additional lines which are added when expanding the `$Log'   
     keyword will be preceded by `   * '.  Unlike previous versions of   
     CVS and RCS, the "comment leader" from the RCS file is not used.   
     The `$Log' keyword is useful for accumulating a complete change   
     log in a source file, but for several reasons it can be   
     problematic.  *Note Log keyword::.   
    
`$RCSfile$'   
     The name of the RCS file without a path.   
    
`$Revision$'   
     The revision number assigned to the revision.   
    
`$Source$'   
     The full pathname of the RCS file.   
    
`$State$'   
     The state assigned to the revision.  States can be assigned with   
     `cvs admin -s'--see *Note admin options::.  


댓글