2011-12-12 26 views
23

tôi thấy this thread mà thảo luận về một giải pháp cho git, và thấy this thread trên mailing list cho Mercurial (thread là bốn tuổi mặc dù)Làm thế nào để ngừng theo dõi một tập tin mà không xóa nó trên Mercurial

Các giải pháp được đề xuất trong danh sách gửi thư là sử dụng hg rm -Af file (và họ để mở khả năng thực hiện hành vi này như một tùy chọn mới, trực quan hơn). Tôi tự hỏi liệu tùy chọn đó có tồn tại không.

Ngoài ra, nếu tôi cố gắng lệnh trên:

> hg rm -Af my_file 
> hg st 
R my_file 

có một R bên cạnh my_file, nhưng các tập tin my_file là về mặt kỹ thuật trên đĩa, và tôi đã nói với Mercurial để ngừng theo dõi nó, vậy tại sao là Tôi nhận được R bên cạnh nó?

Trả lời

20

Bạn chỉ có thể sử dụng hg forget hoặc có thể thêm các tập tin vào tập tin của bạn .hgignore

Và để trả lời câu hỏi cuối cùng về R trong my_file. Nếu bạn thấy sự giúp đỡ cho hg rm --help:

hg xóa [OPTION] ... FILE ...

bí danh: rm

loại bỏ các file được chọn vào cam kết tiếp theo

Schedule the indicated files for removal from the current branch. 

This command schedules the files to be removed at the next commit. To undo 
a remove before that, see "hg revert". To undo added files, see "hg 
forget". 

Returns 0 on success, 1 if any warnings encountered. 

tùy chọn:

-A-Sau khi xóa bản ghi cho các tệp bị thiếu
-f --force xóa (và xóa) tệp ngay cả khi được thêm hoặc sửa đổi
-I --include PATTERN [+] bao gồm các tên khớp với các mẫu nhất định
-X --exclude PATTERN [+] loại trừ các tên khớp với mẫu

[+] tùy chọn đánh dấu có thể được quy định nhiều lần

sử dụng "hg -v giúp loại bỏ" để hiển thị thêm thông tin

Như bạn có thể nhìn thấy bạn đang buộc xóa tập tin đó và đó là lý do bạn có thể thấy R (Đã xóa)

+0

Cảm ơn tôi nghĩ lý do tại sao tôi bị nhầm lẫn là vì 'hg quên myfile' (có vẻ là bí danh cho' hg rm -Af myfile') ** nhãn ** để tệp hg ngừng theo dõi nó ** sau khi cam kết ** (đó là lý do tại sao Hg hiển thị 'R' bên cạnh tệp cho đến khi tôi cam kết) –

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