2011-12-30 25 views
7

Bằng cách nào đó, do các thay đổi thư mục và các thay đổi mã nguồn khác, tôi đang gặp một vấn đề khó chịu. Tôi đang hiển thị một thay đổi đang chờ xử lý cho tệp không thể hoàn tác trong TFS.Không thể loại bỏ phantom đang chờ xử lý thay đổi TFS

Đây là một chút khó giải thích hoàn toàn. Đây là những gì cấu trúc thư mục/tập tin trông giống như trong TFS:

 
RootFolder 
    Folder 
     FileA 
     FileB 
    OldFolderThatWasRenamedToFolder (shows add icon) 
     FileA (shows "edit" pending change) 

"OldFolderThatWasRenamedToFolder" đã được đổi tên thành "Folder" và cam kết TFS như thế. "FileA" trong thư mục không tồn tại đó tham khảo cùng một tệp với "Thư mục/FileA" nhưng đăng ký dưới dạng tệp khác; ví dụ: nếu tôi thay đổi "Thư mục/FileA", các thay đổi đang chờ xử lý được hiển thị cho cả hai tệp "". " Bất cứ khi nào tôi hoàn tác các thay đổi đang chờ xử lý đối với tệp ảo, TFS báo cáo lỗi:

No pending changes were found for .../Folder/FileA.

Tôi không thể loại bỏ thay đổi đang chờ xử lý gây phiền toái này. Tôi đã thực hiện cập nhật trong thư mục buộc ghi đè và thậm chí đã xóa thư mục trước khi cập nhật. Làm thế nào tôi có thể loại bỏ sự thay đổi của ma này?

Cập nhật:

Tôi tìm thấy một đầu mối tiềm năng. Khi tôi so sánh tệp "đang chờ xử lý" với mới nhất, không có thay đổi nào được phát hiện, nhưng khi so sánh với "Phiên bản vùng làm việc", tệp được so sánh với phiên bản tệp cũ hơn. Gần đây tôi đã thử xóa không gian làm việc của mình và tạo một không gian làm việc mới, nhưng vấn đề tương tự vẫn tồn tại. Chính xác thì điều gì đang xảy ra vậy? Các thay đổi đang chờ xử lý này được lưu ở đâu? Có một số tệp tôi có thể chỉnh sửa theo cách thủ công không?

Trả lời

2

Tôi đã tìm ra cách khắc phục điều này bằng cách sử dụng dòng lệnh tf.exe. Bằng cách nhập thông tin này:

tf undo /workspace:MyWorkspace $/.../RootFolder/OldFolderThatWasRenamedToFolder/FileA 

... Tôi có thể hoàn tác thay đổi đang chờ xử lý. Nếu có ai biết cách làm điều tương tự này mà không cần sử dụng dòng lệnh, tôi sẽ chấp nhận câu trả lời của họ thay thế.

+6

Tôi thấy dễ dàng hơn nhiều khi chỉ cần mở bảng điều khiển dành cho nhà phát triển, cd vào thư mục nhánh của tôi và chạy: 'tf undo */recursive'. –

+0

Lệnh này đã giúp tôi. Trong trường hợp của tôi, tôi cần phải có Visual Studio đóng như khôn ngoan các tập tin ngay lập tức sẽ được đánh dấu là chỉnh sửa một lần nữa. – Jeff

4

Bạn sẽ có thể hoàn tác thay đổi đang chờ xử lý bằng công cụ của bên thứ 3 có tên là TFS Sidekicks. Đây là một bộ tiện ích miễn phí của Attrice. Tôi sử dụng nó đặc biệt là khi tôi (hoặc một khách hàng) đi qua các vấn đề như vậy, cũng như các vấn đề quyền, và như thế.

Hơn nữa, công cụ sẽ cho phép quản trị viên thực hiện tương tự cho người dùng khác. Điều đó có nghĩa là nó sẽ giải quyết các tình huống mà mã được đánh dấu là đã được kiểm xuất bởi một người dùng có thể không còn tồn tại trong hệ thống.

Tải xuống tại http://www.attrice.info/cm/tfs/index.htm

Hy vọng điều này sẽ hữu ích.

+0

Cảm ơn bạn đã liên kết. – Jacob

+0

Tuyệt. Sử dụng nó trong tình trạng sức khỏe tốt! :) –

-4

Tôi vẫn còn mới đối với VS2010, nhưng đây là cách tôi đã khắc phục vấn đề này cho tôi:

Đi tới Điều khiển nguồn trong bảng điều khiển Team Explorer. Trong Source Control Explorer, nhấp chuột phải vào thư mục, dự án hoặc tệp mã nguồn mà có những thay đổi đang chờ xử lý bị bỏ qua. Chọn Hoàn tác các thay đổi đang chờ xử lý. Một hộp thoại phương thức xuất hiện xác nhận các Thay đổi đang chờ xử lý sẽ được hoàn tác. Chọn Hoàn tác thay đổi và thông báo! Không có thay đổi nào khác đang chờ xử lý.

7

Trong phòng thu trực quan 2010, bạn có thể nhấp chuột phải vào bản đăng ký đang chờ xử lý trên bảng điều khiển "Đang chờ xử lý" và nhấp vào "Hoàn tác ..."trên menu bật lên, sau đó nhấp vào nút" Hoàn tác thay đổi "trên hộp thoại" Hoàn tác các thay đổi đang chờ xử lý ", đăng ký đang chờ xử lý ẩn sẽ bị xóa khỏi danh sách.

+1

Tôi tự hỏi tại sao đây không phải là câu trả lời được chấp nhận và được trả lời nhiều nhất. Cảm ơn vì đăng! – Saturnix

+1

Nó không được liệt kê trong danh sách thay đổi đang chờ xử lý và tùy chọn menu hoàn tác được chuyển thành màu xám vì không có thay đổi thực tế nhưng TFS vẫn cho rằng có, đó là "lỗi" trong trường hợp này. –

+0

Điều này làm việc cho tôi khi tôi không thể hoàn tác việc thanh toán theo phương thức thay đổi đang chờ xử lý của AX – Chizzle

1

Tôi biết đây là một câu hỏi cũ, nhưng tôi chỉ cần đối mặt với vấn đề đó và tôi đã không thể tìm ra điều này với công cụ dòng lệnh sidekicks hoặc tf. Trong trường hợp của tôi giải pháp đã đóng giải pháp và xóa tập tin .suo

2

Tôi biết đây là một bài cũ, nhưng Tôi đã kết thúc điều tương tự

Tôi tìm thấy: Dòng lệnh của John Kurlak đã làm việc cho tôi. Tôi muốn thử một cái gì đó để tôi chạy lại TF MERGE lần này. và sau đó mở cửa lại. Các tệp được hiển thị trong các Thay đổi đang chờ xử lý và có thể Hoàn tác từ đó.

0

Nhận xét của John Kurlak đã giúp tôi rất nhiều, nhưng hãy để tôi mô tả sự cố đã xảy ra trong trường hợp của tôi và cách tôi giải quyết vấn đề.

Tôi đã thử những gì ông đã gợi ý:

tôi mở phát triển giao diện điều khiển, đã làm một cd vào thư mục của chi nhánh của tôi, và chạy:

tf undo * /recursive 

Sau đó, chọn "All" khi công cụ được hỏi "Hoàn tác thay đổi của bạn ...? (Có/Không/Tất cả)".

Trong trường hợp của tôi không đủ, vì NUGET đã để lại một số tệp không được thêm vào TFS. Khiến công cụ tf để hủy bỏ với các lỗi:

TF400024: The change on C:(SomePath)\themes\base\images\ui-icons_cd0a0a_256x240.png cannot be undone because a file already exists at C:(SomePath)\themes\base\images\ui-icons_cd0a0a_256x240.png. The file must be deleted from disk for the undo to succeed.

Trong trường hợp này, tôi đã phải xóa các tập tin đề cập bằng tay, và sau đó thử lại cho đến khi nó thành công. Điều đó phải được thực hiện một vài lần.

Lưu ý: Những tập tin có thể được tìm thấy dễ dàng hơn trong file explorer nếu bạn có các công cụ điện TFS cài đặt, vì các tập tin thuộc TFS có một hình tam giác màu xanh lá cây trong các biểu tượng của họ, filies khác (những cái bạn cần để xóa) không.

+0

Bạn đã bao giờ tìm thấy giải pháp cho vấn đề này chưa? –

+0

Thật không may là không.Nuget cập nhật các gói, nhưng không thực hiện đúng - đôi khi nó giúp kiểm tra mọi thứ trước khi bạn để Nuget cập nhật các gói - nhưng đôi khi không (đặc biệt nếu bản cập nhật thất bại). Đó là khuyến khích để cho Nuget chỉ cập nhật một gói tại một thời điểm, kiểm tra nó, kiểm tra xem nó trong nếu thành công hay hoàn tác nếu không. Cập nhật nhiều gói không phải là một ý tưởng tốt bởi vì nó có thể để lại rất nhiều lộn xộn trong các thư mục mà TFS không thể xử lý sau đó. – Matt

0

Tôi gặp sự cố tương tự với dự án bị kẹt trong điều khiển phiên bản AX/đối tượng đang chờ xử lý có hành động “Thêm”. Tôi không thể loại bỏ nó bằng cách nhấp vào "Hoàn tác thanh toán" vì nó không còn tồn tại trong các dự án AX, kho lưu trữ cục bộ, cũng như trong VSTS nữa. Để thoát khỏi nó, tôi tạo ra các dự án trong AX/dự án/chia sẻ sau đó đã có thể thoát khỏi nó bằng cách đi đến kiểm soát phiên bản AX/chờ đối tượng và nhấp vào "Hoàn tác thanh toán". Tôi tin rằng điều này xảy ra khi bạn tạo một đối tượng trong AX, thêm nó vào điều khiển phiên bản, sau đó đổi tên đối tượng sau đó. Hi vọng điêu nay co ich.

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