2010-01-27 32 views
6

Khi tôi cam kết mã vào kho lưu trữ Subversion của công ty, tôi thường có nhiều tệp cần được kiểm tra. Thường thì tôi muốn kiểm tra chúng (cam kết) riêng biệt, vì tôi muốn nhóm các tệp tương tự với nhau.Xóa bản sửa đổi từ TortoiseSVN

Theo mặc định, TortoiseSVN mở cửa sổ hộp thoại Cam kết với tất cả các tệp được chọn. Nếu tôi chỉ muốn cam kết một vài trong số các tệp đó, tôi phải "bỏ chọn tất cả" những tệp tôi không muốn cam kết, thêm nhận xét/ghi chú của tôi và sau đó thực hiện cam kết.

Mỗi lần rồi tôi vô tình quên "bỏ chọn tất cả" và gió lên cam kết tất cả các tệp. Nếu nó không phải là ý định của tôi để cam kết tất cả các tập tin, tôi muốn nghĩ rằng tôi muốn có thể đi vào và xóa các sửa đổi và bắt đầu lại. Xin lưu ý, tôi không muốn xóa các tệp khỏi bản sửa đổi, tôi chỉ muốn bản sửa đổi đó chưa tồn tại.

Giả sử cam kết ngẫu nhiên dẫn đến việc kiểm tra trong 12 tệp và sửa đổi là số sửa đổi 9651. Nếu tôi muốn kiểm tra 2 tệp, thay vì 12, tôi muốn xóa bản sửa đổi đó để tôi có thể đăng ký 2 tệp đúng cách.

Từ những gì tôi có thể thấy, một tùy chọn là "Hoàn nguyên thay đổi từ bản sửa đổi 9651". Nhưng điều đó có nghĩa là nó giữ 9651 trong kho và cuộn ngược lại đã ảnh hưởng đến mã trạng thái trước đó của nó. Về cơ bản, điều đó có nghĩa là bạn sẽ mất các thay đổi mà bạn vừa thực hiện. Sau đó bạn có thể "Cập nhật mục sửa đổi 9651" và sau đó lặp lại quy trình cam kết.

Nhưng có cách nào khác để thực hiện việc này hay không, cách xóa bản sửa đổi khỏi kho lưu trữ VÀ tránh phải khôi phục mã bị ảnh hưởng?

+0

Điều này thực sự không giải quyết được vấn đề của tôi khi muốn xóa/xóa bản sửa đổi, nhưng tôi đã tìm thấy thứ gì đó sẽ giúp ngăn chặn việc chạy vào kịch bản mà tôi đã mô tả. Tôi đã kiểm tra cài đặt trong TortoiseSVN và phát hiện ra rằng có một tùy chọn KHÔNG có các mục được chọn tự động trong cửa sổ hộp thoại Cam kết. Bằng cách đó, tôi sẽ phải tự chọn các mục mà tôi muốn Cam kết, tất cả sẽ loại trừ vấn đề tôi gặp phải. Nếu quan tâm, bạn có thể truy cập cài đặt từ menu Bắt đầu tại: TortoiseSVN> Cài đặt. Chung> Hộp thoại 2> Cam kết: Chọn các mục tự động – Lawrence

Trả lời

1

IMHO cách tiếp cận tốt nhất để xử lý việc này là tránh điều đó. Tốt hơn là bạn quen với việc chỉ làm việc cùng một lúc, biên dịch nó, kiểm tra/gỡ lỗi nó và khi nó hoạt động, hãy thực hiện tất cả thay đổi ngay lập tức. Vì vậy, bạn có thể kiểm tra trong tất cả các tập tin thay đổi, và hầu hết thời gian phải nhập chỉ là một bình luận cho SVN. Đừng bắt đầu với tính năng vi mô tiếp theo cho đến khi bạn thực hiện công việc của mình, bất cứ khi nào có thể. Cam kết chỉ một phần sẽ tăng cơ hội mà người khác nhận được một 'xây dựng phá vỡ' sau khi cập nhật, do đó, không làm điều này!

0

Tôi khuyên bạn nên sử dụng changesets cho các tệp đã sửa đổi nhóm đầu tiên và sau đó cam kết chúng (ít nhất là khi sử dụng SmartSVN). Thật không may, điều này không làm việc, nếu các tập tin đã được thay đổi theo cách đó, rằng một số dòng nên được lưu trữ trong changeset/cam kết này, các dòng khác trong một số khác.

+0

tùy chọn của tôi là có một số bản sao làm việc và đảm bảo mỗi bản sao làm việc chỉ được sử dụng cho một thứ tại một thời điểm – Andy

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