2012-11-12 24 views
5

Tôi đang xem một ví dụ về mã doxygen và thấy như sau.

/** 
    @file test.h 
    @brief Define helper functions 
    $Id: test.h,v 1.10 2012/10/10 10:10:10 author Exp $ 
*/ 

Bất cứ ai có thể giải thích $ Id: làm gì ở đây?

Cảm ơn

+0

Hmm. Điều đó ', v' trông đáng ngờ như một định danh tệp CVS. Tôi đã không sử dụng CVS trong nhiều năm và năm mặc dù, vì vậy tôi không có bất kỳ kho lưu trữ còn lại để kiểm tra! Hãy xem phần đầu của [tệp này] (ftp://ftp-glast.slac.stanford.edu/glast.u05/src/CMX/cmt/cmx_doxygen.pl) để có ví dụ tương tự. – Rook

+3

Đó là một id điều khiển phiên bản, CVS, SVN hoặc khác. Cơ chế kiểm soát phiên bản sẽ tự động cập nhật thông tin đó khi bạn thực hiện một số thay đổi. Nó không phải là cụ thể để doxygen hoặc. – juanchopanza

Trả lời

10

Đó không phải là dòng doxygen. Đó là một ký tự lệnh điều khiển nguồn cho biết nó thay thế trong thông tin phiên bản để bạn có thể thấy trong nguồn mà phiên bản cam kết mà bạn đang làm việc. Xem http://www.badgertronics.com/writings/cvs/keywords.html

+0

Vì vậy, tôi có thêm '$ Id: $' trước khi tôi nhập tệp của mình vào kho lưu trữ không? Cảm ơn – elgnoh

+0

Cú pháp '$ Id: $' được sử dụng bởi RCS, CVS, và (tùy chọn) SVN. Có, bạn thêm '$ Id: $', hoặc chỉ '$ Id $', vào tệp nguồn của bạn trước khi kiểm tra nó; việc kiểm tra nó sẽ tự động mở rộng nó. –

+0

Bạn cũng có thể yêu cầu hệ thống kiểm soát nguồn thay đổi từ khóa theo cách thủ công để có thể đặt thông tin này vào thẻ. ví dụ. cho SVN xem (http://wiki.preshweb.co.uk/doku.php?id=svn:propset)[http://wiki.preshweb.co.uk/doku.php?id=svn:propset] một cái gì đó như "svn propset svn: keywords 'Id' test.h" Bạn cũng có thể thiết lập nó trong phần [auto-props] của tệp .subversion/config của bạn để tự động thêm thuộc tính này vào tệp mới, với các dòng như "* .h = svn: keywords = Id " –