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