Làm cách nào để thiết lập etckeeper với Mercurial trong Ubuntu?


11

Tôi quan tâm đến việc cài đặt etckeeper với Mercurial trong hệ thống Ubuntu của mình. Lý do của tôi là tôi không biết cách sử dụng Git và không muốn học vào lúc này. Nếu tôi kiểm tra mô tả gói có vẻ hứa hẹn:

kent@rat:~$ apt-cache search etckeeper
etckeeper - store /etc in git, mercurial, or bzr

Tôi đang tự hỏi làm thế nào để tiếp tục từ đây? Tôi đã thử Googling nhưng tôi chưa tìm thấy gì cho sự kết hợp Ubuntu + etckeeper + Mercurial.

(Nếu bạn biết một hướng dẫn tốt cho tình huống này, một liên kết là một câu trả lời tuyệt vời. Không cần phải lặp lại.)


+1 Cảm ơn bạn đã vô tình tư vấn cho một công cụ thú vị.
Alex Bolotov

Câu trả lời:


11

Tôi đang sử dụng etckeeper trên cả debian và ubfox. Nó không đau.

Chỉ cần làm một sudo etckeeper initvà bạn đã hoàn tất!

Trên thực tế, bạn có thể cần chỉnh sửa /etc/etckeeper/etckeeper.confđể kiểm tra xem hgđược chọn làm lệnh VCS của bạn. Nhưng đó là tất cả những gì bạn cần làm.

Khi đã xong, etckeeper sẽ bắt đầu theo dõi mọi thay đổi mà bạn thực hiện đối với các tệp /etcvà cam kết những thay đổi đó với kho lưu trữ cục bộ. Điều này xảy ra tự động bất cứ khi nào bạn chạy apt-gettrên bất cứ thứ gì và cũng như một công việc định kỳ hàng đêm.

Tuy nhiên, nếu bạn muốn đẩy các thay đổi của mình sang một kho lưu trữ từ xa, bạn sẽ cần phải thực hiện thủ công hoặc thiết lập một cái gì đó khác để làm điều đó cho bạn.


Ah. Tốt để biết! Bây giờ tôi cảm thấy sẵn sàng để thử nó.
Đã xóa

2
Đáng lưu ý (đối với các tân binh) rằng "sudo apt-get install mercurial" sẽ cần thiết nếu nó chưa được cài đặt, theo sau là cấu hình phù hợp (có thể là ~ / .hgrc) như được mô tả trong đầu ra của "hg help config".
Peter Hansen

Tôi không nghĩ hg cần nhiều cấu hình để sử dụng với etckeeper - tất cả những gì tôi đã làm là cài đặt hgk (cho "hg view"), trên Ubuntu 8.04. Đối với Ubuntus gần đây, chỉ cần cài đặt hgview cho "hgview" (được cải thiện). Cả hai đều cung cấp GUI để duyệt hoặc tìm kiếm cam kết với kho lưu trữ, tiện dụng cho những người không có kỹ năng sử dụng Mercurial (hg).
RichVel

8

Trên hệ thống của tôi (Ubuntu Karmic), ngoài cài đặt VCS="hg", tôi phải chỉnh sửa /etc/etckeeper/etckeeper.confvà thêm các mục sau nếu không etckeeper commitsẽ phàn nàn về tên người dùng bị thiếu:

HG_COMMIT_OPTIONS="-u etckeeper@aeolus"

Ngoài ra, trong /etc/.hg/hgrc, tôi đã thêm như sau:

[ui]
username = root@aeolus

Theo cách đó, khi tôi thực hiện một cam kết thông qua etckeeper, tên người dùng trên cam kết đó sẽ là etckeeper@aeolus, và nếu tôi thực hiện một cam kết thủ công thông qua đồng bóng, nó sẽ hiển thị như root@aeolus.


Tôi vừa thiết lập một hệ thống mới với lời khuyên từ @sybreon và gặp lỗi "thiếu tên người dùng". Bước thứ hai của bạn, thêm tên người dùng vào phần [ui] của (trong trường hợp của tôi) ~ / .hgrc, là đủ để vượt qua vấn đề. Tôi không nghĩ rằng phần HG_COMMIT_OPTIONS là bắt buộc.
Peter Hansen

3
Không, không phải vậy. Tôi chỉ thêm rằng để các cam kết tự động và thủ công sẽ hiển thị với các tên người dùng khác nhau. Bằng cách đó, tôi biết những cam kết nào trong nhật ký đã được tôi thực hiện thủ công, sau khi thực hiện một số thay đổi.
Ryan C. Thompson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.