2010-06-13 29 views
6

Trong CVS, tôi có thể đặt $LOG$ vào tệp nguồn và khi tệp được chọn trong $LOG$ sẽ được mở rộng thành nhật ký thực trong tệp.Làm cách nào để mở rộng một số từ khóa phiên bản trong Mercurial?

Nhưng cách thực hiện điều này trong Mercurial? Tất nhiên tôi có nghĩa là các từ khóa khác như ngày đăng ký và thời gian mới nhất.

+0

Xem thêm http://stackoverflow.com/questions/2558531/how-good-is-my-method-of-embedding-version-numbers-into-my-application-using-merc/2558813#2558813 trên a chủ đề tương tự – VonC

+0

Nhưng giống như Richard đề cập đến trong câu trả lời của mình, cần tránh. Xem cuộc tranh luận ở đây: http://stackoverflow.com/questions/645008/what-are-the-basic-clearcase-concepts-every-developer-should-know/645424#645424 – VonC

Trả lời

5

Đối với hầu hết các vấn đề mở rộng từ khóa giải quyết nó tạo ra một đống toàn bộ hơn; không được đề nghị trong Mercurial CVS/RCS-like Keyword Substitution - Why You Don't Need It tuy nhiên nó được ghi lại cách thực hiện nó với các mở rộng nếu bạn thực sự cần.

Tôi không phải là người duy nhất to advise against keyword expansion, mặc dù có những lúc có thể hữu ích khi bạn thực sự cần suy nghĩ kỹ trước khi thực hiện.

0

Sử dụng được xây dựng trong keyword extension.

Một vài điều quan trọng:

  1. CHỈ thêm các tập tin cụ thể mà bạn cần mở rộng từ khóa để mô hình tên tập tin trong HGRC [keyword].
  2. Việc mở rộng là LOCAL. Khi changeset của bạn được đẩy tới repo khác, trừ khi repo đó cũng có cùng một thiết lập từ khóa, từ khóa KHÔNG được mở rộng.

Tôi đồng ý rằng nó nên tránh bất cứ khi nào có thể. Khi không thể tránh được là bạn cần phân phối một vài tệp đã chọn (ví dụ: tiêu đề API) cho người khác (ví dụ: người dùng API), chẳng hạn như không có cách nào họ có thể sử dụng hg để tìm hiểu thông tin phiên bản .

Các vấn đề liên quan