2010-04-01 28 views
5

Có thể update một thư mục để sửa đổi cụ thể mà không cần sao chép toàn bộ kho lưu trữ (cục bộ hoặc trên máy chủ trung tâm) trong Mercurial và làm cách nào tôi có thể sử dụng nó? Điều này sẽ là tuyệt vời, bởi vì để clone toàn bộ repo đầu tiên mất nhiều thời gian cho tôi và thư mục thực sự không cần toàn bộ repo. Ví dụ: mặc định và chi nhánh b2.3 mà tôi muốn cập nhật.HG: Cập nhật một thư mục cho một phiên bản cụ thể mà không cần sao chép toàn bộ repo?

Cảm ơn trước! :)

+2

Có lẽ bạn đã kết hợp các dự án độc lập trong một kho lưu trữ duy nhất? Đây là thực tế phổ biến với Subversion, nhưng các hệ thống kiểm soát sửa đổi được phân phối thì khác nhau. Ngoài ra, những gì bạn đang thực sự yêu cầu là làm thế nào để tạo ra một bản sao "hẹp" hoặc "một phần", một khái niệm mà chúng tôi chưa hỗ trợ. Có một trang wiki ở đây: http://mercurial.selenic.com/wiki/PartialClone –

+1

vâng, chúng tôi chuyển từ svn sang hg :) maybie chúng ta chỉ cần chia các dự án thành các kho lưu trữ, nhưng chúng có sự phụ thuộc vào nhau. vì một bản sao bình thường là thời gian và kích thước? -consuming và repo đã là địa phương (tại sao để có nó trên hai nơi) một bản sao partical [ví dụ hg clone -p hoặc --partial] có thể là tuyệt vời (hoặc nếu có một cách giải quyết dễ dàng để nhận được nó nhanh chóng và với lịch sử phiên bản) – Joschua

Trả lời

7

Bạn có thể kéo một nhánh cụ thể, giả sử b2.3 bằng cách sử dụng hg clone -r b2.3 source-repo target-repo.

Nếu bạn thực sự chỉ cần một bản sao không được phiên bản của tất cả các tệp trong bản sửa đổi N, thì đối với một số kho lưu trữ web, bạn có thể tải xuống bản sao đó bằng giao diện web của chúng.

1

clone là cách được ưu tiên để thực hiện trong Mercurial. Sẽ mất một lượng thời gian tối thiểu khi được thực hiện cục bộ. Tôi không biết cách nào khác để làm điều đó.

Tìm kiếm "liên kết cứng" trên this tutorial page để biết thêm thông tin về chủ đề.

+0

không có ở đây phải mất nhiều thời gian – Joschua

+0

@ Joschua: hãy nhớ rằng bạn chỉ cần làm toàn bản sao một lần. Khi bạn có tất cả lịch sử trên máy của mình, bạn có thể thực hiện 'hg clone -r b2.3 foo bar' để tạo bản sao nhanh chỉ với một số lịch sử. Điểm mấu chốt là bạn không phải liên hệ lại với máy chủ cho các thay đổi mà bạn đã có cục bộ. –

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