2012-01-13 27 views
6

Tôi sao chép một kho lưu trữ mới bằng phiên bản TortoiseHg 2.1.3. Sau đó, thực hiện một số thay đổi. Khi tôi cam kết, tôi nhận được thông báo này như dưới đây.Hg TortoiseHg cam kết lỗi trên cửa sổ 7

Ánh xạ ổ đĩa máy tính để bàn của tôi được Samba kết nối với máy chủ Linux.

Tôi rất cảm kích nếu ai đó có thể trợ giúp.

% hg commit --repository V:\htdocs\critical\mysite2 --verbose --user MyUser --message=testing Mercuial V:\htdocs\critical\mysite2/application/controllers/package.php 
smartdox/application/controllers/package.php 
transaction abort! 
rollback completed 
abort: The process cannot access the file because it is being used by another process 
[command returned code 255 Fri Jan 13 14:30:17 2012] 
mysite2% 
+0

Did bạn cố gắng để clone kho vào một ổ đĩa cục bộ trên Windows 7, cam kết nó và sau đó đẩy vào "ổ" Linux? Tôi sử dụng kịch bản này trên một VirtualBox với Windows 7 và Ubuntu 11.10 như một máy chủ (thư mục chia sẻ, không phải Samba), và nó hoạt động tốt. –

Trả lời

0

tôi không thực sự biết về cam kết, nhưng tôi biết rằng Mercurial/TortoiseHG có vấn đề khi bạn đẩy vào một ổ đĩa Linux mà là ánh xạ trong môi trường Windows.

Xem những câu trả lời tôi đã viết về nó:

Có lẽ những vấn đề tương tự xảy ra khi kho bạn đang cố gắng cam kết nằm trực tiếp trên Linux ánh xạ lái xe.

Tôi khuyên bạn nên đặt kho lưu trữ trên một ổ đĩa Windows thực và thử nếu bạn có thể cam kết ở đó.
Nếu có, các sự cố bạn mô tả có thể do ổ đĩa Linux.

1

Tôi đã thấy vấn đề tương tự này, nhưng tôi đã nhận thấy rằng "thỉnh thoảng" tôi có thể cam kết thay đổi. Tôi nghĩ rằng 'một quá trình khác' là một cái gì đó trên máy chủ.

Khi tôi không cam kết, hg đưa ra một lỗi nói (trong số những thứ khác) "hủy bỏ giao dịch! Rollback không thành công - hãy chạy hg phục hồi".

Nếu tôi chạy hg phục hồi, đôi khi không thành công, quá (đang được sử dụng bởi một quy trình khác). Nếu tôi chờ một hoặc hai phút, sau đó thử lại để phục hồi, nó thường thành công.

Sau khi khôi phục thành công, nếu tôi đợi thêm một hoặc hai phút thì cam kết thường thành công khi tôi thử lại.

lý thuyết của tôi là máy chủ là lập chỉ mục hoặc virus quét nội dung của .hg/


Tôi không biết một đảm bảo công việc xung quanh, nhưng trên kho nhỏ của tôi, tôi thường có thể nhận được của tôi changesets trong nếu tôi cho nó một hoặc hai thử. May mắn của bạn có khả năng tăng khi hoạt động trên các tệp kho lưu trữ của bạn giảm.

13

Đối với tôi thay đổi các thiết lập:

Global Settings -> TortoiseHg -> Monitor Repo Changes 

để

localonly 

giúp.

Các cuộc thảo luận dài trong bộ theo dõi lỗi chính thức: https://bitbucket.org/tortoisehg/thg/issue/889/

+1

Cảm ơn bạn, đây chính xác là những gì tôi cần để giải quyết vấn đề (cùng) của tôi! – DOOManiac

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