Tại sao TFS không nhận được bản mới nhất?


177

Tại sao TẠI SAO TFS không có được công việc mới nhất một cách nhất quán?

Bạn có thể nghĩ rằng tính năng này đã được kiểm tra kỹ lưỡng.

Những gì tôi phải làm là, lấy phiên bản cụ thể, sau đó kiểm tra cả ghi đè lên các tệp có thể ghi + ghi đè tất cả các tệp.

Là thiết lập cục bộ của tôi bị rối hoặc bạn cũng làm điều này?


Điều thú vị nhất tôi thấy là "Nhận phiên bản mới nhất" không làm gì ngay cả khi tệp cục bộ đã bị xóa vì bất kỳ lý do gì. Tôi đã nghĩ rằng việc kiểm tra rằng tệp cục bộ ít nhất tồn tại là một điều khá rõ ràng để làm. Nhưng tại sao nó không thể so sánh dấu thời gian của mỗi tệp trên máy chủ với thời gian cuối cùng bạn nhận được (có thể được lưu trữ ở đâu đó cục bộ) làm tôi bối rối.
Dylan Nicholson

Đây nên là một bình luận.
Jimenemex

Câu trả lời:


118

TFS định nghĩa lại những gì "Nhận mới nhất". Theo thuật ngữ TFS, Get Recent có nghĩa là lấy phiên bản mới nhất của các tệp, nhưng bỏ qua các tệp mà máy chủ cho rằng đã có trong không gian làm việc của bạn. Mà với tôi và chỉ về mọi người khác trên hành tinh là sai.

Xem liên kết này: http://bloss.microsoft.co.il/bloss/srlteam/archive/2009/04/13/how-get-latest-version-really-works.aspx

Cách duy nhất để khiến nó thực hiện những gì bạn muốn là Nhận Phiên bản cụ thể, sau đó chọn cả hai hộp "Ghi đè ...".


7
Điều này không đúng. TFS "lấy mới nhất" hoạt động chính xác như được quảng cáo, miễn là TFS biết về các thay đổi đối với các tệp. Nhận mới nhất "bắt vít" khi mọi người ra ngoài và sửa đổi nộp bên ngoài IDE mà không kiểm tra chúng trước. Sau đó, TFS nghĩ rằng bạn có nguồn mới nhất trên đĩa và không lấy được.
Robaticus

18
@Robaticus Làm thế nào để tfs 'nhận được mới nhất' được quảng cáo thực sự. giống như chris sôi nổi đã nói trước đó, anh ấy và mọi người trên hành tinh hiểu rằng 'nhận bản mới nhất' có được phiên bản mới nhất không phải là những gì tfs sẽ làm. bạn không phải chỉnh sửa nguồn bên ngoài tfs để làm hỏng nó. Tôi có 2 máy trạm và làm việc thay thế cho nhau và tôi không thể nhận được đồng bộ hóa nguồn. nhận phiên bản mới nhất đã là một rắc rối với tfs và tôi không thể tưởng tượng được việc hợp nhất sẽ như thế nào.
Syizful Nizam Yahya

2
@publicENEMY, tôi đã từng làm việc với tfs trên hai máy và thực sự đó là một vấn đề đối với đồng bộ hóa nguồn. Bạn có thể cần hai người dùng tfs cho việc này ...
kroiz

11
Ừ! Đây là một nỗi đau. Visual Studio có thể dễ dàng bị rối tung và đôi khi sửa nó trên hệ thống tập tin là cách dễ nhất để đi. Các hệ thống kiểm soát nguồn khác như Subversion có các móc nối windows explorer và cả tích hợp VS và thực hiện công việc giám sát các thay đổi tốt hơn. Tôi nhớ SVN!
Dan Csharpster

3
Tôi đồng ý với tác giả. Tôi đọc "Nhận phiên bản mới nhất" là "Nhận phiên bản mới nhất từ ​​máy chủ" (tôi sẽ lấy nó từ đâu?). Trong VS2010 tôi đã nhận Phiên bản mới nhất và nói rằng tôi có phiên bản mới nhất, nhưng nếu tôi so sánh thì nó liệt kê sự khác biệt giữa phiên bản máy chủ cục bộ và phiên bản mới nhất. Tôi ổn với việc nó không ghi đè lên công việc địa phương, nhưng ít nhất nó nên làm một phép so sánh dấu thời gian và không đánh lừa tôi với "Bạn có phiên bản mới nhất". Khi tôi xóa phiên bản cục bộ, Nhận phiên bản mới nhất hoạt động như mong đợi.
Swanny

42

Đôi khi, Get specific version thậm chí kiểm tra cả hai hộp kiểm sẽ không giúp bạn có được tệp mới nhất. Có lẽ bạn đã thực hiện một thay đổi cho một tệp và muốn hoàn tác những thay đổi đó bằng cách lấy lại phiên bản mới nhất. Chà ... đó là những gì Undo pending changescho và không phải là mục đích Get specific version.

Nếu nghi ngờ:

  • hoàn tác kiểm tra đang chờ xử lý trên (các) tệp
  • làm một so sánh sau đó để đảm bảo tệp của bạn phù hợp với phiên bản dự kiến
  • chạy một 'so sánh' đệ quy trên toàn bộ dự án của bạn sau đó để xem những gì khác
  • để mắt đến cửa sổ thay đổi đang chờ xử lý và đôi khi bạn có thể cần kiểm tra 'lấy phiên bản máy chủ' để giải quyết thay đổi đang chờ xử lý không tương thích

Và đây là thứ tôi thích nhất mà tôi vừa khám phá:

  • để mắt đến Outputcửa sổ cho những tin nhắn như thế này:

    Cảnh báo - Không thể làm mới R: \ TFS-DỰ ÁN \ www.example.com \ exampleMVC \ Ví dụ MVC \ Ví dụ MVC.csproj vì bạn có một chỉnh sửa đang chờ xử lý.

Thông báo quan trọng này xuất hiện trong cửa sổ đầu ra. Không có thông báo khác! Không có gì trong các thay đổi đang chờ xử lý và không có thông báo hộp thoại nào khác cho bạn biết rằng tệp bạn vừa yêu cầu rõ ràng không được truy xuất! Và có - bạn giải quyết điều này bằng cách chỉ chạy Undo pending changesvà nhận tệp.


Cảm ơn bạn, câu trả lời của bạn ( Undo pending changes) đã làm việc cho tôi.
RAM

Chỉ cần đảm bảo hoàn tác các thay đổi trên tệp bạn thực sự muốn thay thế và không phải mọi thứ bạn đang làm việc
Simon_Weaver

@Simon_Weaver Cảm ơn điều này đã giải quyết vấn đề của tôi, nó có ý nghĩa tại sao nó đang xảy ra vẫn siêu khó chịu.
nulltron

12

TFS, giống như một số nhà cung cấp kiểm soát nguồn khác, chẳng hạn như Perforce, làm điều này, vì hệ thống biết phiên bản cuối cùng bạn thành công là gì, vì vậy hãy chuyển các phiên bản mới nhất thành "nhận thay đổi kể từ x". Nếu bạn chơi theo luật của nó và thực sự kiểm tra mọi thứ trước khi chỉnh sửa chúng, bạn không nhầm lẫn vấn đề và "nhận được mới nhất" thực sự như nó nói.

Như bạn đã thấy, bạn có thể buộc nó đánh giá lại mọi thứ, có mức sử dụng băng thông lớn hơn nhiều, nhưng hoạt động gần hơn với cách sử dụng SourceSafe.


11

Thật khó để trả lời một tuyên bố mà không có ví dụ về cách nó không hoạt động, nhưng điều quan trọng là phải hiểu rằng TFVC (trong chế độ "Không gian làm việc của máy chủ", là cơ chế trước TFS 2012) không kiểm tra trạng thái của hệ thống tệp cục bộ của bạn . Không gian làm việc của máy chủ TFVC là một loại hệ thống "kiểm tra-chỉnh sửa-kiểm tra" trong đó đây là thiết kế phụ, một quyết định có chủ ý nhằm giảm ồ ạt lượng I / O tệp cần thiết để xác định trạng thái không gian làm việc của bạn. Thay vào đó, thông tin không gian làm việc được lưu trên máy chủ.

Điều này cho phép máy chủ TFVC Workspaces để quy mô rất codebases lớn rất hiệu quả. Nếu bạn đang ở trong một cơ sở mã nhiều gigabyte (như Visual Studio hoặc cây nguồn Windows) thì máy khách của bạn không cần quét hệ thống tệp cục bộ của bạn, tìm kiếm các tệp có thể đã thay đổi, vì hợp đồng bạn có với TFS là bạn sẽ kiểm tra rõ ràng một tập tin khi bạn muốn chỉnh sửa nó.

Bạn sẽ không đánh dấu một tệp là chỉ ghi và thay đổi nó mà không kiểm tra rõ ràng trước. Nếu bạn đi xuống tuyến đường này, thì máy chủ sẽ không biết rằng bạn đã thay đổi tệp của mình và thực hiện thao tác "Nhận mới nhất" sẽ không cập nhật không gian làm việc cục bộ của bạn, vì bạn đã nói với máy chủ rằng bạn đã thực hiện thay đổi.

Nếu bạn làm lật đổ cơ chế này thì bạn có thể sử dụng các tfpt reconcilelệnh để kiểm tra không gian làm việc tại địa phương để thay đổi mà bạn đã thực hiện tại địa phương.

Nếu bạn thấy mình đang sử dụng "Nhận phiên bản cụ thể" và chọn tùy chọn "bắt buộc" và "ghi đè", thì rất có thể bạn đang có thói quen bỏ qua tất cả các thực thi mà TFS đã thực hiện để giữ cho bạn khỏi bị tổn thương, và có lẽ bạn nên xem xét Không gian làm việc cục bộ TFVC.

Không gian làm việc cục bộ TFVC cung cấp loại hệ thống kiểm soát phiên bản "chỉnh sửa-hợp nhất", có nghĩa là bạn không cần phải kiểm tra rõ ràng các tệp trước khi chỉnh sửa chúng và chúng không chỉ đọc trên đĩa. Thay vào đó, bạn chỉ cần chỉnh sửa tệp và khách hàng của bạn sẽ quét hệ thống tệp, nhận thấy sự thay đổi và trình bày đây là thay đổi đang chờ xử lý.

Không gian làm việc cục bộ TFVC được khuyến nghị cho các dự án nhỏ không yêu cầu kiểm soát quyền chi tiết, vì chúng thể hiện quy trình làm việc đẹp hơn nhiều. Bạn không cần phải trực tuyến và bạn không phải kiểm tra rõ ràng các tập tin trước khi chỉnh sửa chúng.

Không gian làm việc cục bộ TFVC là mặc định trong TFS 2012 và nếu chúng không được kích hoạt cho bạn, thì bạn nên hỏi quản trị viên máy chủ của mình. (Các tổ chức có cơ sở mã lớn hoặc yêu cầu kiểm toán nghiêm ngặt có thể vô hiệu hóa Không gian làm việc cục bộ TFVC.)

Cuốn sách tuyệt vời Kiểm soát phiên bản của Eric chìm bằng ví dụ phác thảo sự khác biệt giữa hệ thống kiểm tra-chỉnh sửa-kiểm tra và chỉnh sửa-hợp nhất-cam kết và khi một hệ thống phù hợp hơn các hệ thống khác.

Cuốn sách Professional Team Foundation Server 2013 cũng cung cấp thông tin tuyệt vời về sự khác biệt giữa Không gian làm việc của Máy chủ TFVC và Không gian làm việc Địa phương TFVC. Tài liệu và blog của MSDN cũng cung cấp thông tin chi tiết:


Tuyệt vời, câu trả lời nhiều thông tin, nhưng tôi không chắc chắn "đánh dấu một tệp là chỉ ghi" trả lời OP. Tôi biết tôi đang sử dụng Visual Studio (hiện 2013) để thực hiện tất cả các thay đổi của mình đối với các tệp * .cs trong dự án MVC .NET và khi tôi khởi động máy tính xách tay của mình, "Nhận mới nhất" thường khiến tôi bị treo đến điểm tôi 'gần như nuôi cấy hàng hóa "Nâng cao >>> Nhận cụ thể >>> Mới nhất >>> Ghi đè" ngay bây giờ. Không có chỉnh sửa hoặc đăng ký bên ngoài VS. VS tìm thấy các tệp tôi đã chỉnh sửa và đưa chúng vào Thay đổi đang chờ xử lý. Tôi kiểm tra chúng với VS. Tôi không thể thấy bất cứ điều gì có thể "làm tổn thương chính mình", nhưng nhận được công việc mới nhất không đáng tin cậy. ??
ruffin

@ruffin Bạn đang nói rằng có được treo mới nhất ? Đó không phải là những gì tôi diễn giải câu hỏi của OP. Nó có bao giờ kết thúc? Các hoạt động khác có chậm không, hay chỉ là Nhận? Là Get w / Overwrite bao giờ chậm hay chỉ là Get mới nhất thông thường?
Edward Thomson

Không, không treo. Tôi có thể Nhận mới nhất và có vẻ như nó hoạt động (và hoạt động hợp lý nhanh chóng), nhưng các tệp không thay đổi. Nếu tôi nhận được cụ thể >>> Mới nhất >>> Ghi đè, giống như các đề xuất @NotMe , các tệp "bắt kịp". Có khả năng cá trích đỏ: Cũng thỉnh thoảng xảy ra với Kệ. Có, cách làm việc của tôi là chính xác, hoặc Nhận cụ thể sẽ không hoạt động, tôi không tin.
ruffin

Tôi không có một đề nghị tốt ở đây. Tôi ước bạn sẽ liên hệ với bộ phận hỗ trợ nếu bạn gặp vấn đề lâu dài mà bạn tin rằng có thể là một lỗi. Cho dù đây có phải là một lỗi hay không, bạn nên giải quyết vấn đề này.
Edward Thomson

6

Team Foundation Server (TFS) theo dõi bản sao cục bộ của nó trong một thư mục ẩn có tên $ TF. Khi bạn phát hành "get Phiên bản mới nhất", TFS xem xét thư mục này và xem thời tiết tôi có bản sao mới nhất hay không. Nếu nó không tải về bản sao mới nhất. Không có vấn đề gì nếu bạn có tập tin gốc hay không. Trong thực tế, bạn có thể đã xóa toàn bộ thư mục (như trong trường hợp của tôi) và TFS sẽ không tìm nạp bản sao mới nhất vì nó không nhìn vào tệp thực tế mà là thư mục ẩn nơi ghi lại các thay đổi. Lỗ hổng với thiết kế này là, mọi thứ được thực hiện bên ngoài hệ thống sẽ không được ghi lại trong TFS. Ví dụ: bạn có thể vào Windows explorer, xóa thư mục hoặc tệp và TFS sẽ không nhận ra nó. Nó sẽ hoàn toàn mù quáng. Ít nhất tôi mong đợi ở đó Windows sẽ không cho phép bạn xóa tập tin này nhưng nó thì có!

Một cách để thực thi bản sao mới nhất là xóa thư mục $ TF ẩn theo cách thủ công. Để làm điều đó, đi đến dấu nhắc lệnh và điều hướng đến thư mục gốc nơi bạn dự án đã được kiểm tra và đưa ra lệnh này

rd/s $tf                    // remove $TF folder and everything inside it

Nếu bạn chỉ muốn kiểm tra thư mục ẩn, bạn có thể thực hiện bằng cách sử dụng

dir /ah                    // display hidden files and folders

Lưu ý: Nếu bạn làm điều đó, tf sẽ nghĩ rằng bạn không có bất kỳ bản sao cục bộ nào mặc dù bạn có nó trong các tệp và nó sẽ đồng bộ lại mọi thứ.

Thận trọng: Sử dụng phương pháp này có nguy cơ của riêng bạn. Xin vui lòng không sử dụng nó trong công việc quan trọng.


Điều này làm việc cho tôi khi không có gì khác làm. Tôi đã thử lấy phiên bản cụ thể và kiểm tra cả hai hộp kiểm để buộc tải xuống, nhưng điều đó sẽ không nhận được các tệp. Tôi nghĩ rằng một cái gì đó đã tham nhũng. Nhưng giải pháp này đã làm việc.
Francisco phónconia

3

"Nhận phiên bản mới nhất" theo mặc định sẽ chỉ tải xuống các tệp đã thay đổi trên máy chủ kể từ lần cuối bạn chạy "Nhận phiên bản mới nhất". TFS theo dõi các tệp bạn tải xuống để không mất thời gian tải lại cùng một phiên bản của các tệp. Nếu bạn đang sửa đổi các tệp bên ngoài Visual Studio, điều này có thể gây ra sự cố nhất quán mà nó có vẻ như bạn đang thấy.


3

Thật không may, phải có một hoặc nhiều lỗi trong TFS 2008, vì vấn đề này thường xuyên xảy ra trên các máy phát triển và xây dựng các máy chủ nơi tôi làm việc.

Tôi có thể thực hiện Nhận mới nhất, tôi có thể thấy trong danh sách lịch sử của dự án đã có các cam kết sau khi tôi thực hiện Nhận mới nhất, tôi chưa chạm vào các tệp trên đĩa theo bất kỳ cách nào, nhưng sau chức năng "Nhận mới nhất" đã hoàn tất, khi tôi kiểm tra tab TFS, một số tệp vẫn nói rằng chúng không phải là phiên bản mới nhất.

Rõ ràng TFS có thể xác định rằng tôi có các tệp cũ cục bộ, vì danh sách nói như vậy. Tuy nhiên, Get Recent không làm được điều đó, hãy lấy phiên bản mới nhất. Nếu tôi làm những gì bạn đã làm, hãy sử dụng phiên bản Nhận cụ thể và kiểm tra hai hộp kiểm ở cuối hộp thoại, sau đó các tệp được lấy ra.

Thay vào đó, chúng tôi đã thay đổi máy chủ xây dựng để luôn sử dụng loại chức năng Phiên bản cụ thể, vì vậy phần này hiện hoạt động, nhưng vì máy chủ xây dựng của chúng tôi (TeamCity) cũng dựa vào việc kiểm tra xem có thay đổi nào đối với các tệp để khởi động bản dựng không , đôi khi nó rơi vào chế độ "không có gì thay đổi, không thấy gì ở đây, di chuyển dọc" và không làm gì cho đến khi chúng tôi buộc phải chạy cấu hình xây dựng.

Lưu ý rằng tôi đã gặp phải sự cố này trên một máy không bao giờ chạm vào, ngoại trừ bản dựng + mới nhất, cả bằng tay, vì vậy không có gì giả mạo các tệp. Chỉ là TFS bị nhầm lẫn.

Một lần, tôi đã xác minh rằng các tệp trên đĩa thực sự giống hệt với phiên bản được lấy trước đó, vì vậy không có sự giả mạo thủ công nào được thực hiện với các tệp.

Ngoài ra, tôi không biết làm thế nào TFS có thể "biết" liệu các tệp có thay đổi trên đĩa hay không mà không thực sự xem nội dung. Nếu một phần của TFS có thể thấy rằng các tệp thực sự không phải là phiên bản mới nhất, thì phiên bản Nhận mới nhất hoàn toàn có thể có được phiên bản mới nhất. Điều này trong tham chiếu để bình luận cho câu trả lời khác ở đây.


TFS phụ thuộc vào số phiên bản tệp để biết bạn có phiên bản "mới nhất" hay không. Con số đó được duy trì hoàn toàn trong TFS và chỉ được cập nhật khi có ai đó đăng ký. Vì vậy, khi bạn "Nhận mới nhất", TFS sẽ kiểm tra cơ sở dữ liệu của nó để xem phiên bản cuối cùng được gửi cho bạn là gì. Nếu con số này bằng với phiên bản hiện tại, thì nó tin rằng bạn có phiên bản mới nhất; bất kể những gì thực sự có trên hệ thống tập tin cục bộ của bạn. Ý tưởng là để hạn chế lưu lượng mạng. Thật không may, cách duy nhất mà mô hình này hoạt động là nếu tất cả các chỉnh sửa xảy ra trong một ứng dụng có kiến ​​thức về TFS.
NotMe

Ngoài ra, tôi đồng ý có ít nhất một lỗi với phiên bản 2005/08 này. Tôi đã thấy các vấn đề chính xác mà bạn đã mô tả trên nhiều máy; đó là những gì dẫn tôi sử dụng phiên bản Get Cụ thể một cách tôn giáo.
NotMe

Trong một số trường hợp, các chỉnh sửa đã xảy ra hoàn toàn trong Visual Studio trên một máy, máy kia, mục đích duy nhất là thực hiện bản dựng + mới nhất, không có thay đổi cục bộ nào được thực hiện. Tuy nhiên, nó quản lý để vít này lên. Tôi không ấn tượng với TFS Source Control để nói rằng ít nhất. Hy vọng năm 2010 sẽ có ít vấn đề hơn.
Lasse V. Karlsen

3

Có thể do bạn đăng nhập TFS với cùng một người dùng và tên không gian làm việc (dựa trên tên máy theo mặc định) cũng giống nhau, vì vậy TFS nghĩ rằng bạn đang ở trên cùng một máy và cùng một không gian làm việc, do đó bạn đã có phiên bản mới nhất của các tập tin, vì vậy nó sẽ không nhận được chúng cho bạn.

hãy thử đổi tên máy của bạn và tạo một không gian làm việc mới như một máy mới.


2

Tôi gặp vấn đề tương tự với Visual Studio 2012. Bất kể tôi đã làm gì, nó cũng không nhận được mã từ kiểm soát nguồn TFS.

Trong trường hợp của tôi, nguyên nhân là ánh xạ một thư mục + thư mục con từ điều khiển nguồn riêng biệt nhưng đến cùng một cây trong HD cục bộ của tôi.

Giải pháp là loại bỏ ánh xạ thư mục con bằng cửa sổ "quản lý không gian làm việc".


1

Hầu hết các vấn đề tôi gặp phải với các nhà phát triển phàn nàn rằng Get Recent không làm những gì họ mong đợi xuất phát từ thực tế là họ đang thực hiện Get Recent từ Solution Explorer chứ không phải từ Source Control Explorer. Solution Explorer chỉ lấy các tệp là một phần của giải pháp và bỏ qua mọi thứ có thể được yêu cầu bởi các tệp trong giải pháp, và do đó là một phần của kiểm soát nguồn, trong khi Source Control explorer so sánh không gian làm việc cục bộ của bạn với kho lưu trữ trên máy chủ để xác định tệp nào được cần.


Tôi đã thử nó từ Team Explorer, vẫn cho kết quả tương tự. Trong trường hợp của tôi, tôi đã xóa thư mục và muốn lấy lại bản sao mới nhất nhưng không gặp may.
Hammad Khan

1
Tôi không đồng ý với câu trả lời này. Nếu bạn đã chia sẻ các dự án được sử dụng bởi các giải pháp khác nhau, bạn phải thực hiện nó trong Solution Explorer, nếu không, nó sẽ chỉ thực hiện một đường dẫn TFS cụ thể đó
Heliac

Tại sao thêm tùy chọn từ Solution Explorer nếu bạn không cần sử dụng nó? Khi tôi nhấp vào "Hiển thị tất cả các tệp", tệp đã ở đó nhưng không được bao gồm trong dự án của tôi. Thật kỳ lạ vì tôi thậm chí không phải là người đã thêm nó.
mokumaxCraig

1

Khi tôi gặp phải vấn đề này khi nó không nhận được phiên bản mới nhất và phiên bản không khớp, trước tiên tôi thực hiện "Lấy phiên bản cụ thể" để đặt nó vào bộ thay đổi và đặt vào 1. Điều này sau đó sẽ xóa tất cả các tệp khỏi không gian làm việc cục bộ của bạn (cho dự án, thư mục đó, tập tin, v.v.) và nó cũng sẽ có bản cập nhật TFS để nó biết rằng bạn hiện KHÔNG CÓ TẢI XUỐNG PHIÊN BẢN. Sau đó, bạn có thể thực hiện "Nhận mới nhất" và viola, bạn thực sự sẽ có bản mới nhất


1

Điều này có thể xảy ra khi bạn sử dụng TFS từ hai máy khác nhau có cùng một tài khoản, nếu vậy bạn nên so sánh để xem các tệp đã thay đổi và kiểm tra chúng sau đó nhận bản mới nhất sau đó hoàn tác các thay đổi đang chờ xử lý để xóa thanh toán


1

Điều này hiệu quả với tôi:
1. Thoát Visual Studio
2. Mở cửa sổ lệnh và điều hướng đến thư mục: "% localappdata% \ Local \ Microsoft \ Team Foundation \"
3. Điều hướng đến các thư mục con cho mọi phiên bản và xóa thư mục phụ "bộ đệm" và nội dung của nó
4. Khởi động lại Visual Studio và kết nối với TFS.
5. Kiểm tra phiên bản mới nhất.


0

chỉ muốn thêm TFS MSBuild không hỗ trợ các ký tự đặc biệt trên các thư mục tức là "@"

tôi đã có kinh nghiệm trong quá khứ nơi một trong những thư mục dự án của chúng tôi có tên là Internal @ Project1

chúng tôi đã tạo một định nghĩa TFS Build để chạy tệp msbuild tùy chỉnh, sau đó thư mục không gian làm việc sẽ không nhận được bất kỳ nội dung nào trong thư mục External @ Project1 trong không gian làm việc mới nhất. Có vẻ như tfs get bị lỗi nhưng không hiển thị bất kỳ lỗi nào.

sau một số thử nghiệm và lỗi và đổi tên thư mục thành _Project1. voila chúng tôi đã nhận được các tập tin trên thư mục (_Project1).


TFS hay không, bạn không bao giờ nên sử dụng các ký tự đặc biệt trong tên thư mục dự án!
Heliac

@ không có gì đặc biệt. Và cũng không phải là%, v.v., v.v ... Chính sự lười biếng của Microsoft đã khiến những nhân vật như vậy bị đối xử khác với những nhân vật 'bình thường'.
Kevin Whitefoot

0

Công cụ: Công cụ điện TFS

Nguồn: http://dennymichael.net/2013/03/19/tfs-scorch/

Lệnh: tfpt scorch / đệ quy / xóa C: \ LocationOfWorkspaceOrFolder

Điều này sẽ đưa ra một hộp thoại sẽ yêu cầu bạn Xóa hoặc Tải xuống danh sách các tập tin. Chọn hoặc Bỏ chọn các tệp phù hợp và nhấn ok. Xuất hiện trong Grid (CheckBox, FileName, FileAction, FilePath)

Nguyên nhân: TFS sẽ chỉ so sánh với các mục trong không gian làm việc. Nếu các thay đổi được thực hiện bên ngoài không gian làm việc, TFS sẽ không biết về chúng.

Hy vọng ai đó tìm thấy điều này hữu ích. Tôi tìm thấy bài đăng này sau khi xóa một số ít các thư mục ở các vị trí khác nhau. Không nhớ những thư mục nào tôi đã xóa đã loại trừ tùy chọn Force Get / Thay thế thông thường mà tôi sẽ sử dụng.


0

Trong trường hợp của tôi, Nhận phiên bản cụ thể, thậm chí kiểm tra cả hai hộp kiểm và hoàn tác tất cả các thay đổi đang chờ xử lý không hoạt động.

Đã kiểm tra không gian làm việc. Chỉnh sửa không gian làm việc hiện tại. Kiểm tra tất cả các đường dẫn. Đường dẫn giải pháp không chính xác và đang trỏ đến một thư mục đã xóa.

Đã sửa lỗi đường dẫn và hoạt động tốt nhất.


0

Nhấp chuột phải: Nâng cao> Nhận phiên bản cụ thể . Chọn "Phiên bản Letest" và bây giờ, quan trọng, đánh dấu hai kiểm tra: nhập mô tả hình ảnh ở đây

Các kiểm tra là:
Ghi đè lên các tệp có thể ghi mà không được kiểm tra

Ghi đè tất cả các tệp ngay cả khi phiên bản cục bộ khớp với phiên bản đã chỉ định


Vui lòng mô tả các mục cần được kiểm tra thay vì đăng ảnh chụp màn hình.
Chuck Adams
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.