Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

TFS - Warning - Unable to refresh ... because you have a pending edit.

TFS 서버로부터 모든 파일을 받아오라는 명령어를 다음과 같이 내릴 수 있습니다.

tf get . /version:T /force /overwrite /recursive /all

그런데 이런 경고가 발생하는군요. ^^

Warning - Unable to refresh D:\TestApp\bin\Debug\plugin.exe because you have a pending edit.

해당 파일을 그냥 서버 버전으로부터 받길 원한다면 pending 상태를 undo 해버리면 됩니다. 따라서 다음과 같이 명령어를 내리면 해결됩니다.

D:\TestApp> tf undo D:\TestApp\bin\Debug\plugin.exe
Undo your changes to bin\Debug\plugin.exe? (Yes/No) y
UnitTest\AgentDiagTool\bin\Debug:
Undoing edit: AgentDiagTool.exe




참고로, tfs undo를 하기 전 다음의 글을 보게 되었습니다.

TFS 2010 Get Specific Version doesn't overwrite local files 
; https://social.msdn.microsoft.com/Forums/vstudio/en-US/a8fc6e0c-be6c-4cbb-9d2f-7931be465cf9/tfs-2010-get-specific-version-doesnt-overwrite-local-files?forum=tfsversioncontrol

답변에 보면 이런 글이 있는데요.

Secondly, clear the client-side cache on the local machines:
 1. Exit Visual Studio
 2. Open a command window and navigate to the folder: "%localappdata%\Microsoft\Team Foundation\" (Note: For Windows Server 2003 navigate to \Documents and Settings\<user>\Local Settings\Application Data\Microsoft\Team Foundation folder)
 3. For Visual Studio 2010 clients navigate to the sub folder: "3.0" and delete the sub folder "cache" and its contents
 4. Restart Visual Studio and connect to TFS.
 5. Test the Get Latest Version. 

저 답변에 따라 cache를 지워봤습니다.

%localappdata%\Microsoft\Team Foundation\7.0\Cache

그런데 이후 tf 실행시 되려 workspace 문제가 발생합니다.

D:\TestApp>tf get . /version:T /force /overwrite /recursive /all
Unable to determine the workspace. You may be able to correct this by running 'tf workspaces /collection:TeamProjectCollectionUrl'.

D:\TestApp>tf workspace
Unable to determine the workspace. You may be able to correct this by running 'tf workspaces /collection:TeamProjectCollectionUrl'.

지정된 명령에 따라 tf workspaces...를 실행해 주면,

tf workspaces /collection:https://testpc.testad.com/tfs/defaultcollection

다행히 복구는 됩니다.

tf workspaces /collection:https://testpc.testad.com/tfs/defaultcollection
Collection: https://testpc.testad.com/tfs/defaultcollection
Workspace Owner          Computer  Comment
--------- -------------- --------- ------------------------------------------------------------------------
TESTWORK TestUser        TESTPC

하지만 "tf get .. /version:T /force /overwrite /recursive /all" 명령어를 실행하면 다시 pending changes 문제가 발생합니다. 즉, 전혀 해결되지 않은 것입니다. "tf undo"를 해야 합니다.





[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 8/23/2017]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2017-11-01 06시16분
Yes/No 물음없이 모든 항목을 undo하고 싶다면?

tf undo /recursive /noprompt *
정성태

... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
13198정성태12/18/202214060.NET Framework: 2080. C# - Microsoft.XmlSerializer.Generator 처리 없이 XmlSerializer 생성자를 예외 없이 사용하고 싶다면?파일 다운로드1
13197정성태12/17/202213572.NET Framework: 2079. .NET Core/5+ 환경에서 XmlSerializer 사용 시 System.IO.FileNotFoundException 예외 발생하는 경우파일 다운로드1
13196정성태12/16/202214302.NET Framework: 2078. .NET Core/5+를 위한 SGen(Microsoft.XmlSerializer.Generator) 사용법
13195정성태12/15/202214538개발 환경 구성: 655. docker - bridge 네트워크 모드에서 컨테이너 간 통신 시 --link 옵션 권장 이유
13194정성태12/14/202214344오류 유형: 833. warning C4747: Calling managed 'DllMain': Managed code may not be run under loader lock파일 다운로드1
13193정성태12/14/202214886오류 유형: 832. error C7681: two-phase name lookup is not supported for C++/CLI or C++/CX; use /Zc:twoPhase-
13192정성태12/13/202214857Linux: 55. 리눅스 - bash shell에서 실수 연산
13191정성태12/11/202216427.NET Framework: 2077. C# - 직접 만들어 보는 SynchronizationContext파일 다운로드1
13190정성태12/9/202218458.NET Framework: 2076. C# - SynchronizationContext 기본 사용법파일 다운로드1
13189정성태12/9/202217866오류 유형: 831. Visual Studio - Windows Forms 디자이너의 도구 상자에 컨트롤이 보이지 않는 문제
13188정성태12/9/202217336.NET Framework: 2075. C# - 직접 만들어 보는 TaskScheduler 실습 (SingleThreadTaskScheduler) [1]파일 다운로드1
13187정성태12/8/202216796개발 환경 구성: 654. openssl - CA로부터 인증받은 새로운 인증서를 생성하는 방법 (2)
13186정성태12/6/202214667오류 유형: 831. The framework 'Microsoft.AspNetCore.App', version '...' was not found.
13185정성태12/6/202215628개발 환경 구성: 653. Windows 환경에서의 Hello World x64 어셈블리 예제 (NASM 버전)
13184정성태12/5/202213495개발 환경 구성: 652. ml64.exe와 link.exe x64 실행 환경 구성 [1]
13183정성태12/4/202213362오류 유형: 830. MASM + CRT 함수를 사용하는 경우 발생하는 컴파일 오류 정리 [1]
13182정성태12/4/202215225Windows: 217. Windows 환경에서의 Hello World x64 어셈블리 예제 (MASM 버전)
13181정성태12/3/202213973Linux: 54. 리눅스/WSL - hello world 어셈블리 코드 x86/x64 (nasm)
13180정성태12/2/202215214.NET Framework: 2074. C# - 스택 메모리에 대한 여유 공간 확인하는 방법파일 다운로드1
13179정성태12/2/202213765Windows: 216. Windows 11 - 22H2 업데이트 이후 Terminal 대신 cmd 창이 뜨는 경우
13178정성태12/1/202214892Windows: 215. Win32 API 금지된 함수 - IsBadXxxPtr 유의 함수들이 안전하지 않은 이유파일 다운로드1
13177정성태11/30/202215468오류 유형: 829. uwsgi 설치 시 fatal error: Python.h: No such file or directory
13176정성태11/29/202212240오류 유형: 828. gunicorn - ModuleNotFoundError: No module named 'flask'
13175정성태11/29/202216904오류 유형: 827. Python - ImportError: cannot import name 'html5lib' from 'pip._vendor'
13174정성태11/28/202213362.NET Framework: 2073. C# - VMMap처럼 스택 메모리의 reserve/guard/commit 상태 출력파일 다운로드1
13173정성태11/27/202214403.NET Framework: 2072. 닷넷 응용 프로그램의 스레드 스택 크기 변경
... [31]  32  33  34  35  36  37  38  39  40  41  42  43  44  45  ...