Visual Studio 내에서 프로젝트 폴더의 이름을 바꾸려면 어떻게해야합니까?


687

프로젝트 폴더의 이름을 바꾸는 현재 솔루션은 다음과 같습니다.

  • 솔루션에서 프로젝트를 제거하십시오.
  • Visual Studio 외부에서 폴더 이름을 바꿉니다.
  • 솔루션에 프로젝트를 다시 추가하십시오.

더 좋은 방법이 있습니까?


4
클릭 한 번으로 간단하게 수행 할 수있는 방법은 없습니다. 어쨌든 Visual Studio 내에서는 아닙니다.
Matt Hanson

11
Microsoft가 2010 릴리스에서이 문제를 해결하는지 아는 사람이 있습니까?
Vidar

29
분명히 3 년이 지났기 때문에 andersjanmyr의 과정을 거쳐야했습니다. :)
sichinumi

4
비주얼 스튜디오 기능 요청 : visualstudio.uservoice.com/forums/121579-visual-studio/… 가서 투표하십시오!
Tim Abell

2
2018 년에도 기능이 여전히 지원되지 않기 때문에 투표에 실패한 것 같습니다. 파일을 변경하지 않는 데 몇 기가 바이트가 걸립니까? 분명히 17gbs. 17.
Joseph Franciscus

답변:


748

TFS 사용자 : 파일 / 폴더 이름 바꾸기 전에 경고해야하는 소스 제어를 사용 하는 경우 필요한 추가 단계를 다루는 대신이 답변 을보십시오 .


Visual Studio에서 프로젝트의 폴더 이름 , 파일 ( .*proj) 및 표시 이름 을 바꾸려면

  • 솔루션을 닫습니다.
  • Visual Studio 외부에서 폴더 이름을 바꿉니다. (소스 제어를 사용하는 경우 TFS에서 이름 변경)
  • 경고를 무시하고 솔루션을 엽니 다 (소스 제어에서 프로젝트를로드하도록 요청하면 "아니오"로 응답).
  • 사용할 수없는 모든 프로젝트를 진행하고 ...
    • 프로젝트 의 속성 창을 엽니 다 (프로젝트를 강조 표시하고 Alt+ Enter또는을 누르 F4거나 마우스 오른쪽 단추로 클릭> 속성).
    • ' 파일 경로 ' 특성을 새 위치로 설정하십시오.
      • Visual Studio 2012에서와 같이 속성을 편집 할 수없는 경우 메모장 ++.sln같은 다른 편집기에서 파일을 직접 열고 대신 경로를 업데이트하십시오. (TFS 등에서 먼저 솔루션을 체크 아웃해야 할 수도 있습니다.)
    • 프로젝트를 다시로드 하십시오-마우스 오른쪽 버튼을 클릭하고> 프로젝트를 다시로드하십시오.
    • 프로젝트를 강조 표시하고을 눌러 프로젝트의 표시 이름을 변경 F2하거나 마우스 오른쪽 단추를 클릭하고> 이름 바꾸기를 클릭하십시오 .

참고 : 솔루션에서 프로젝트를 제거한 다음 다시 추가하는 다른 제안 된 솔루션은 프로젝트 참조를 손상시킵니다.

이러한 단계를 수행하면 다음과 같이 이름을 바꾸는 것도 고려할 수 있습니다.

  1. 어셈블리
  2. 기본 / 루트 네임 스페이스
  3. 기존 파일의 네임 스페이스 (Visual Studio의 리 팩터 도구 또는 ReSharper의 일치하지 않는 네임 스페이스 도구 사용)

또한 다음 어셈블리 속성 값을 수정하십시오 .

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute

25
소스 제어를 사용하는 사람들은 소스 제어에서 폴더의 이름을 바꿔야한다고 생각합니다. 나에게 위의 단계는 그렇게하지 않았다.
Patrick Szalapski

10
TFS를 사용하는 경우 2 단계는 실제로 소스 제어에서 폴더의 이름을 바꾸고 sln을 다시 열기 전에 최신 폴더를 얻는 것입니다.
Amy Patterson

3
폴더 이름을 바꾼 후 VS가 프로젝트를 찾을 수없는 경우 VS2010에서 파일 경로 속성을 편집 할 수 있습니다.
Jimmy

11
VS 2012에서는이 기능이 작동하지 않았습니다. 이 속성은 읽기 전용입니다. .sln 파일을 텍스트로 열어야했습니다.
Grault

3
이케! 폴더 이름을 바꾸려면이 모든 문제가 발생합니다! 이것은 MS-DOS에서 더 쉬웠다!
Kokodoko

97

* .sol, * csproj 파일을 사용하여이를 수행하는 다른 방법이 있습니다.

  1. 솔루션 파일을여십시오.
  2. 변경하려는 * .csproj를 검색하십시오.
  3. * .sol 파일과 관련하여 다음과 같습니다.

    Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shani.Commands.Impl", "Shani.Commands.Impl\Shani.Commands.Impl.csproj", "{747CFA4B-FC83-419A-858E-5E2DE2B948EE}"

  4. 예를 들어 첫 번째 부분을 새 디렉토리로 변경하십시오.

    Impl\Shani.Commands.Impl\Shani.Commands.Impl.csproj

  5. 물론 전체 프로젝트를 해당 디렉토리로 옮기는 것을 잊지 마십시오.


17
이것은 FilePath 속성이 읽기 전용이기 때문에 받아 들일 수있는 대답보다는 나를 위해 일했습니다.
TJKjaer 2013

1
고마워, 이것은 많은 도움이되었습니다. 또한 RootNamespace 및 AssemblyName 값도 변경해야합니다.
DevDave

@TJKjaer 동일합니다.
dzenesiz

VS2019에서는 이것이 효과가 없었습니다. 존재하지 않는 프로젝트 참조에 대한 경고를 제공하고 참조 된 프로젝트에서 네임 스페이스 및 클래스 누락에 대한 오류를 컴파일합니다.
Jeff Walker 코드 레인저

이것은 C # 프로젝트와 함께 Visual Studio 2019에서 작동합니다. 다소 간단한 솔루션입니다. 컴파일하려고 할 때 문제가있는 사람들을 위해 컴파일하는 대신 프로젝트를 완전히 재구성하는 것이 좋습니다.
실바

95

이것은 Visual Studio 2015에서 간단 합니다 (이전 버전에서 작동 할 수 있음)

  1. 솔루션 탐색기에서 기본 솔루션을 마우스 오른쪽 버튼으로 클릭 → 이름 바꾸기
  2. 솔루션 탐색기에서 프로젝트 (솔루션 아래)를 마우스 오른쪽 버튼으로 클릭 → 이름 바꾸기
  3. 솔루션 탐색기에서 속성을 두 번 클릭하거나 마우스 오른쪽 버튼으로 클릭하고 → 응용 프로그램 탭 으로 이동하여 어셈블리 이름기본 네임 스페이스의 이름을 바꿉니다 .
  4. 네임 스페이스의 이름도 바꾸려면 클래스 파일 중 하나를여십시오. 네임 스페이스 → 이름 바꾸기 ...를 마우스 오른쪽 단추로 클릭하십시오 . 프로젝트 전체에서 네임 스페이스에 대한 모든 참조를 검색하고 바꿔야합니다.
  5. 프로젝트를 닫고 → 프로젝트 폴더의 이름을 바꿉니다 .
  6. 메모장 에서 .sln파일을 편집하고 csproj의 경로 (예 : →) 를 변경하십시오 .fu\bar.csprojbar\bar.csproj

3
종속 프로젝트 (있는 경우)에서 프로젝트 참조를 업데이트하는 것을 잊었습니다.
Steven Liekens

1
@JohnPeters 내가 볼 수있는 한이 답변은 편집되지 않았습니다. 5 단계는 폴더 이름 바꾸기를 설명하므로이 단계를 수행하면 실제 폴더 이름도 변경됩니다.
Philip Stratford

하위 프로젝트 폴더에 4 단계를 적용해야합니다 (6 단계가 작동하도록하기 위해 유일하게 누락 된 단계 임).
Felipe Gutierrez

54

이봐, 난 고투했다. 불행히도 Visual Studio에는 원 클릭 솔루션이 없지만 Visual Studio 2012를 실행 중이고 Team Foundation Server를 사용하여 프로젝트를 소스 제어 하는 경우 소스 히스토리를 유지하면서 작동시키는 방법은 다음과 같습니다.

(5-10 단계를 건너 뛸 수 있다는 점에 유의하면서 아래 @mjv의 주석을 읽으십시오)

  1. 모든 변경 사항을 체크인했는지 확인하여 보류중인 변경 사항이 없는지 확인하십시오.
  2. 마우스 오른쪽 단추를 클릭하고 제거를 선택하여 솔루션에서 프로젝트를 제거하십시오 .
  3. 이제 Windows 탐색기에서 프로젝트 폴더의 이름을 바꿉니다.
  4. Visual Studio로 돌아가서 솔루션 탐색기에서 솔루션을 마우스 오른쪽 단추로 클릭하고 추가 -> 기존 프로젝트를 선택 하십시오 . 이름이 바뀐 폴더에있는 2 단계에서 제거한 프로젝트의 프로젝트 파일을 선택하십시오.
  5. 이제 프로젝트가 솔루션으로 돌아 왔지만 소스 제어에 프로젝트가 추가되지 않은 것 같습니다. 이를 수정하려면 소스 제어 탐색기를여십시오.
  6. 3 단계에서 이름을 바꾼 디스크의 프로젝트 폴더에 해당하는 소스 제어 탐색기에서 프로젝트 폴더를 찾으십시오.
  7. 소스 제어 탐색기에서 폴더의 이름을 바꾸면 디스크의 프로젝트 폴더와 이름이 동일합니다.
  8. 이제 보류중인 변경 사항을 살펴보십시오. 솔루션 파일을 변경하고 프로젝트 폴더에서 이름을 바꾸어야합니다.
  9. 다시 빌드하고 모든 것이 올바르게 컴파일되는지 확인하십시오. 이름을 바꾼 프로젝트에 대한 프로젝트 간 참조가있는 경우이를 참조한 개별 프로젝트에 다시 추가해야합니다.
  10. 이제 모두 설정되었습니다. 가서 모든 것을 확인하십시오.

위의 가이드가 나를 위해 일했습니다. 그래도 문제가 해결되지 않으면 로컬 솔루션을 완전히 삭제하고 작업 영역에서 폴더 매핑을 제거하십시오. 만약을 대비하여 Visual Studio를 다시 시작하십시오. 실제로 컴퓨터에서 전체 솔루션을 삭제했는지 확인하십시오. 이제 작업 공간에 대한 솔루션 매핑을 읽고 최신 버전을 얻으십시오. 이제 위의 단계를 시도하십시오. 위의 단계를 수행하는 동안 문제가 발생하는 경우에도 마찬가지입니다. 솔루션을 로컬에서 삭제하고 최신 소스를 얻으면 작업 할 수있는 공간이 생깁니다.

여전히 문제가 지속되면 위의 단계를 시도하기 전에 솔루션 파일에서 수동으로 변경하거나 다른 '트릭'을 시도하지 않았는지 확인하십시오. 무언가를 변경하고 체크인 한 경우 프로젝트 이름 변경을 시작하기 직전의 시점으로 롤백을 고려할 수 있습니다.

물론 솔루션 탐색기에서 프로젝트 자체의 이름을 바꾸고 싶을 수도 있습니다. 위의 단계 전에이 작업을 수행 할 수 있지만이 경우 위의 단계를 적용하기 전에 해당 변경 사항을 확인하십시오. 나중에 수행 할 수도 있지만 솔루션 탐색기에서 프로젝트 이름을 바꾸기 전에 먼저 위의 모든 단계를 수행하고 변경 사항을 확인하십시오. 솔루션 탐색기에서 위의 단계를 프로젝트 이름의 이름으로 혼합하지 않는 것이 좋습니다. 그래도 작동 할 수도 있지만 2 개의 개별 변경 세트에서 수행하는 것이 좋습니다.


10
작동하는 절차를 소개해 주셔서 감사합니다 VS2012! 당신이 단계 5-10을 피할 수 있습니다 (즉, 소스 제어에서 이름을 변경 한 폴더를 다시 가져올 필요) 내에서 폴더를 대신, 당신은 닫으면 솔루션을 누른 다음 이름 바꾸기 VS' Source Control Explorer보다는 Windows Explorer.
mjv

2
이 단계는 종료되었지만 소스 제어 탐색기 (SCE)에서 이름을 바꾸기 전에 Windows 탐색기 (WE)를 사용하여 폴더 위치를 변경하면 오류가 발생했습니다 Folder already exists. 따라서 폴더의 이름을 다시 바꾸고에서 WE변경 SCE한 다음 파일을 해당 폴더에 복사하십시오. 따라서 위 mjv의 의견을 따르십시오. 또한 나중에 VS 에서이 아닌 실제 프로젝트 파일 이름을 변경 하여이 단계 중 일부를 반복하게 만들 필요가 있다고 생각하지 않았습니다.
CaptainBli

mjv의 주석이 포함 된이 접근 방식은 Perforce에서 마우스 오른쪽 버튼을 클릭하고 이름 바꾸기 / 이동 옵션도 사용할 수 있습니다.
santos

당신은 프로젝트 참조를 깨는 피할 수, 참조 stackoverflow.com/a/10853509/10245
팀 아벨

@TimAbell VS2012에서이 절차를 시도해 보았습니까? 원래 답변을 작성하기 전에 시도했지만 속성 창의 프로젝트 경로가 항상 읽기 전용이므로 작동하지 않았습니다. 그리고 SLN 파일 편집도 작동하지 않았습니다.
René

34

현재는 없습니다. 실제로 깨진 프로젝트 노드를 클릭하고 속성 창에서 '경로'속성을 찾고 작은 찾아보기 아이콘을 클릭하고 새 경로를 선택하십시오.

Voilà :)


2
VS2015를 사용하면 "언로드 된 프로젝트 속성"속성 이름은 "파일 경로"이며 값을 편집하거나 찾아 볼 수 없습니다.
윌리엄

29

더 간단한 해결책은 다음과 같습니다.

  1. 프로젝트를 마우스 오른쪽 단추로 클릭하고 이름을 바꾸십시오.
  2. (선택 사항) 프로젝트의 속성 설정을 열고 새 프로젝트 이름을 사용하도록 어셈블리 이름 (및 선택적으로 기본 네임 스페이스)을 수정하십시오.
  3. (선택 사항) 소스 파일에서 네임 스페이스 이름을 선택하고 마우스 오른쪽 단추를 클릭 한 후 리 팩터 / 이름 바꾸기 를 선택 하여 네임 스페이스의 이름을 새 프로젝트 이름으로 바꾸십시오.
  4. (선택 사항) AssemblyInfo.cs 파일을 열고 어셈블리 이름을 일치하도록 변경하십시오.
  5. 솔루션을 저장하고 닫으십시오.
  6. Windows 탐색기를 사용하여 프로젝트 폴더의 이름을 새 이름으로 바꿉니다.
  7. 텍스트 편집기에서 SLN 파일을 열고 프로젝트 경로에 대한 하나의 참조를 찾아서 새 폴더 이름을 사용하도록 변경하십시오.

4 단계가 필요하지만 7 단계가 권장됩니다. 하루가 끝나면 프로젝트의 이름이 완전히 바뀝니다. 기술적으로 프로젝트의 폴더 이름은 프로젝트 자체와 일치하지 않아도되므로 해당 단계조차 선택 사항이지만 일치하지 않으면 혼동 될 수 있습니다. 어셈블리 및 네임 스페이스 이름에 대해서도 동일합니다.


대체 단계 7 : VS로 SLN 파일을 열고 경고를 무시하고 ( "확인"클릭) 솔루션 탐색기에서 프로젝트를 선택하고 F4를 누르고 파일 경로를 업데이트하십시오. 옵션 단계 0 : 솔루션을 마우스 오른쪽 단추로 클릭하고 이름을 바꾸십시오.
Martin Schneider

7
마이크로 소프트가 어떤 일을 얼마나 힘들게하는지
Alex

1
이것은 Visual Studio Community 2017에서 나를 위해 일했습니다. 허용 된 답변이 효과가 없었습니다 (나에게). 변경해야 할 속성은 읽기 전용이므로 속성 대화 상자에서 변경할 수 없습니다.
codingatty

10

에서 andersjanmyr의 대답 먼저 프로젝트의 이름을 변경하는 것이 더 쉽습니다.

  1. 프로젝트 이름을 바꿉니다.
  2. 솔루션을 닫습니다 (저장).
  3. Visual Studio 외부의 폴더 이름을 바꿉니다.
  4. 경고를 무시하고 솔루션을 엽니 다.
  5. 사용 불가능한 모든 프로젝트를 진행하고 '파일 경로'특성을 프로젝트 파일의 새 위치 (예 : someproject.csproj)로 설정하십시오 .
  6. 프로젝트를 다시로드하십시오.

또한 이러한 단계를 수행 한 후에 다른 프로젝트 이름을 이전 프로젝트 이름으로 바꾸고 싶을 수도 있습니다.

프로젝트 속성에서 어셈블리 이름 및 기본 네임 스페이스를 업데이트하십시오.

이것은 프로젝트 파일에서 다음을 업데이트합니다 ...

<RootNamespace>SomeProjectName</RootNamespace>
<AssemblyName>SomeProjectName</AssemblyName>

... "네임 스페이스가 파일 위치와 일치하지 않습니다. 'SomeProjectName'이어야합니다."오류를 제거합니다.

루트 네임 스페이스의 이름을 바꿉니다 (ReSharper가있는 경우 네임 스페이스를 마우스 오른쪽 단추로 클릭하고 리 팩터-> 이름 바꾸기로 이동).

AssemblyInfo.cs 에서 이전 프로젝트 이름을 모두 변경하십시오 .


이 답변을 바탕으로 솔루션 경로를 수동으로 편집하여 프로젝트 경로가 새 경로가되고 솔루션을 열 때 경고를 피할 수 있습니다. 프로젝트> 속성> AssemblyInfo를 클릭하여 VS 내에서 어셈블리 정보를 편집하고 AssemblyInfo.cs 파일을 편집하지 않도록 할 수 있습니다.
H2ONaCl

8

Visual Studio 2017의 경우 Visual Studio 확장을 사용할 수 있습니다.

다운로드

다음과 같이 프로젝트 이름이 바뀝니다.

  • 프로젝트 위치 폴더
  • 솔루션 파일
  • 다른 프로젝트에서 참조
  • 조립 명 ・ 정보
  • 기본 네임 스페이스

대박! 과거에해야했던 모든 수동 이름 변경에 지쳤습니다. 잘 작동합니다. 그러나 다른 패키지에서 문자열 참조를 찾지 못했습니다. 의도적인지 확실하지 않습니다.
frostymarvelous

고마워. 그러나 나는 다음을 이해하지 못했습니다 : "다른 패키지의 문자열 참조". 설명 할 수 있습니까?
Kuanysh

그래서 나는 테스트 프로젝트를 가지고 있고 나는 가지고 있습니다 [assembly: InternalsVisibleTo("MyTests")]. 내가 이름을 바꿀 때 MyTests, 그 참조의 이름을 변경하지 않았다. 다시 말하지만, 이것이 귀하의 생각에 속하지 않으며 수동으로 쉽게 해결할 수 있다고 생각합니다.
frostymarvelous

1
이 확장명은 폴더 이름이 현재 프로젝트와 동일한 이름으로되어 있다고 가정합니다 (이름 바꾸기 전). . 그들은 다른 경우, 이름 바꾸기가 나는 또한 작업 다행히에 "이름 바꾸기 네임 스페이스"를하지 않았다 :( 실패, 난 단지 아주 작은 솔루션을 사용하지 않으면 훌륭한.!
savehansson

1
@MassimilianoKraus 나는 시장에 대한 설명없이 마지막 부정적인 리뷰 때문에 확장을 개인으로 만듭니다. 그 죄송합니다. 링크를 업데이트했습니다
Kuanysh

6

Visual Studio 2010을 사용하여 직접 수행해야했습니다. 일부 사람들이 대답했듯이 가장 간단한 단계는 다음과 같습니다.

  1. Visual Studio 프로젝트를 닫습니다.
  2. .sln 파일을 열고 각 .csproj 항목의 프로젝트 디렉토리 접두사 이름을 바꾸십시오.
  3. .sln 파일을 저장하십시오.
  4. .sln 파일의 변경 사항과 일치하도록 하드 드라이브의 실제 프로젝트 폴더 디렉토리 이름을 바꾸십시오.
  5. .sln을 열고 (Visual Studio에서) 다시 빌드

5

Visual Studio + Git을 사용하고 파일 기록을 유지하려는 경우 (프로젝트 및 / 또는 솔루션의 이름을 바꾸는 작업) :

  1. Visual Studio 닫기

  2. .gitignore 파일에서 이름을 바꾸려는 프로젝트의 모든 무시 경로를 해당 경로의 이름이 바뀐 버전으로 복제하십시오.

  3. 다음과 같이 Git move 명령을 사용하십시오 :

    git mv <old_folder_name> <new_folder_name>
    

    추가 옵션에 대한 설명서를 참조하십시오 : https://git-scm.com/docs/git-mv

  4. .sln 파일에서 : 프로젝트를 정의하는 행을 찾고 경로에서 폴더 이름을 변경하십시오. 줄은 다음과 같아야합니다.

    Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "<Project name>", "<path-to-project>\<project>.csproj"
    
  5. Visual Studio를 열고 프로젝트를 마우스 오른쪽 버튼으로 클릭 → 이름 바꾸기

  6. 그런 다음 네임 스페이스의 이름을 바꿉니다.

    나는 읽었 ReSharper에서는 이에 대한 몇 가지 옵션이 있습니다. 그러나 간단한 찾기 / 바꾸기가 나를 위해 일했습니다.

  7. 오래된 .gitignore 경로를 제거하십시오.


4

링크 된 기사의 항목 3을 참조하십시오 .


  1. 솔루션과 IDE를 닫습니다.
  2. Windows 탐색기에서 : 디렉토리 이름을 새 이름으로 변경하십시오.
  3. Windows 탐색기에서 : 텍스트 편집기로 .sln 파일을여십시오.
  4. 디렉토리 이름을 새 이름으로 변경하고 저장하십시오.
  5. IDE를 다시 시작하고 파일최근 파일 메뉴가 자동으로 시작되지 않으면 메뉴 에서 솔루션을 엽니 다 .
  6. 솔루션 탐색기에서 프로젝트 폴더를 클릭하고 하단의 속성에서 경로 속성을 확인하십시오. 이제 새 프로젝트 폴더를 참조합니다.

그것은 나를 위해 일했다.


4

Visual Studio 2017에서 나를 위해 일한 것 :

  • Visual Studio의 솔루션 닫기
  • 솔루션에서 프로젝트 디렉토리의 이름을 바꾸십시오.
    • (소스 제어의 변경 사항을 푸시하십시오-내 경우에는 Git)
  • 디렉터리 이름을 변경하여 텍스트 편집기 (Visual Studio 2017 외부)에서 .sln 파일을 편집하십시오.
  • Visual Studio에서 솔루션을 다시여십시오.

" 프로젝트 다시 추가 "와 같은 내용 입니다. 나는 모든 것을 재건했고 모든 것이 좋았습니다.


1
또한 다른 프로젝트의 종속성에서 이전 프로젝트를 제거하고 새로 이름이 바뀐 프로젝트를 새 종속성으로 다시 추가해야 할 수 있습니다 (이전 프로젝트를 마우스 오른쪽 단추로 클릭 >> 제거를 마우스 오른쪽 단추로 클릭 Dependencies>> Add reference>> 새 프로젝트 선택) )
maxshuty

4

나는 이것을 여러 번해야했다. 기존 프로젝트의 용도를 바꿀 수는 있지만 네임 스페이스, 파일 및 폴더 (파일 / 디렉토리 이름 포함)의 텍스트 이름을 바꿀 수 있으면 정말 유용합니다.

루트 폴더에서 시작하여 재귀 찾기 및 바꾸기를 사용하면 이름 바꾸기로 인해 솔루션 파일 및 프로젝트 참조의 프로젝트에 대한 링크가 끊어지지 않습니다.

이를 위해이 작업을 수행하는 프로젝트를 만들었습니다. 이 응용 프로그램은 또한 .git, .svn 및 .vs 설정 파일과 같은 버전 제어 폴더를 무시하려고 노력합니다. 추가 정보는 README에 있습니다.

https://github.com/garethrbrown/vs-project-rename

예


2
잘 했어! 프로젝트는 실제로 이름을 바꾸는 도구입니다. 한 단어가 실제로 누락되었다고 생각합니다. 전체 단어 일치 옵션입니다.
Eliahu Aaron

4

비즈니스 인텔리전스 데이터 도구 (SSDT-BI 2013)를위한 Visual Studio 확장을위한 입증 된 솔루션 :

  1. Project 폴더를 새 위치로 옮기십시오 (아직 이름을 바꾸지 마십시오)
  2. 솔루션 탐색기에서 프로젝트 / 솔루션 이름을 바꿉니다.
  3. 새로 이름이 바뀐 프로젝트를 닫고 저장하십시오.
  4. 프로젝트 폴더와 .sln 파일의 이름을 바꿉니다.
  5. 텍스트 편집기를 사용하여 새로 이름이 바뀐 프로젝트 솔루션 파일 (.sln)을 엽니 다 ( Notepad ++ 사용 )
  6. 6 번 줄에 "Project {fdjfksdjk4387! ...} ="OLDPROJECT ","OLDFOLDER \ OLDPROJECT.rptproj "가 표시됩니다. 4 단계에서 사용한 새 이름으로 모든 이름을 바꾸십시오 (예 : ... ="NEWPROJECT ","NEWFOLDER \ NEWPROJECT.rptproj "...)
  7. 그게 다야!

100 % 테스트를 거쳤으며 필자의 경우 완벽하게 작동했습니다.

참고 : 다른 프로젝트 템플릿 및 다른 Visual Studio 버전에서 작동하는지 확인할 수 없습니다. 항상 그렇듯이 모든 것을 미리 백업하십시오.



2

Visual Studio에서 프로젝트의 이름을 바꾸고 폴더 이름, 프로젝트 이름 및 .sln 파일을 편집하는 것과 동일한 문제가 발생했습니다. 방금 모든 것을 수행 하는 VBScript 스크립트를 작성했습니다 . 교체 할 문자열을 신중하게 선택해야합니다.

.vbs 파일을 솔루션의 .sln 파일과 같은 디렉토리에두면됩니다.

' Script parameters'
Solution = "Rename_Visual_Studio_Project" '.sln'
Project = "Rename_Visual_Studio_Project" '.csproj'
NewProject = "SUCCESS"

Const ForReading = 1
Const ForWriting = 2

Set objFso = CreateObject("Scripting.FileSystemObject")
scriptDirr = objFso.GetParentFolderName(wscript.ScriptFullName)

' Rename the all project references in the .sln file'
Set objFile = objFso.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForReading)
fileText = objFile.ReadAll
newFileText = Replace(fileText, Project, NewProject)
Set objFile = objFSO.OpenTextFile(scriptDirr + "\" + Solution + ".sln", ForWriting)
objFile.WriteLine(newFileText)
objFile.Close

' Rename the .csproj file'
objFso.MoveFile scriptDirr + "\" + Project + "\" + Project + ".csproj", scriptDirr + "\" + Project + "\" + NewProject + ".csproj"

' Rename the folder of the .csproj file'
objFso.MoveFolder scriptDirr + "\" + Project, scriptDirr + "\" + NewProject

1

참고 :이 수정 프로그램은 Visual Studio 2008 용이지만 여기서 작동합니다.

  1. Windows 탐색기를 사용하여 솔루션 폴더 (상위 폴더 및 하위 폴더)를 모두 새 솔루션 이름으로 바꾸십시오.
  2. .sln상위 폴더에 있는 파일을 삭제하십시오 .
  3. Visual Studio에서 메뉴 파일프로젝트 열기를 선택하십시오 .
  4. 방금 이름을 바꾼 새 폴더로 드릴하고 .csproj 파일 (하위 폴더에 있음)을 엽니 다.
  5. 프로젝트 이름을 마우스 오른쪽 단추로 클릭하고 원하는 이름으로 바꾸십시오. (1 단계의 폴더와 이름이 같아야합니다.)
  6. 메뉴 파일솔루션 닫기를 선택하십시오 . .sln파일 변경 사항을 저장할 것인지 묻는 대화 상자가 나타납니다 . 를 클릭하십시오 Yes.
  7. 에서 이름으로 저장 파일 새로 이름을 대화를 가리킨 부모 및 폴더를 클릭합니다 저장 . (참고 : .sln파일 이름이 폴더와 같은지 확인하십시오 . 필수는 아니지만 일관성을 유지합니다.)

끝난.


1

TFS를 사용할 때 2 단계는 실제로 소스 제어에서 폴더 이름을 바꾸고 솔루션을 다시 열기 전에 최신 폴더를 얻는 것입니다.



1

글쎄, 나는 그것을 내 방식으로했다

  • Visual Studio 2012 닫기
  • 서브 디렉토리의 이름을 .sln 아래에서 선호하는 이름으로 바꾸십시오.
  • * .suo 파일을 삭제하십시오.
  • 솔루션을 다시 열고 새 하위 디렉토리 이름을 충족하도록로드 된 프로젝트의 특성을 수정하십시오.

1
  1. 솔루션 및 프로젝트 폴더에서 프로젝트 이름 바꾸기

  2. 솔루션에서 프로젝트 삭제

  3. 솔루션에 기존 프로젝트 추가 (이름이 바뀐 프로젝트)

그것은 나를 위해 작동합니다. TFS는 또한 새로운 프로젝트를 추적 할 것입니다.


1

텍스트 편집기에서 .sln을 열고 다음 줄에서 <FolderName>을 새 폴더 이름으로 변경하십시오. Project ( "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ricky", "\ .csproj", " {021CC6B0-8CFB-4194-A103-C19AF869D965} "


3
왜 / 어떻게 작동하는지 설명하십시오.
Simon.SA

1

.sln 파일로 이동하여 마우스 오른쪽 버튼을 클릭하고 메모장 ++ (또는 모든 편집기; 메모장 ++가 가장 빠름)로 열고 경로를 찾은 다음 변경하십시오.



0

새 프로젝트를 만들어야하고 프로젝트 이름과 다른 프로젝트 폴더 이름을 원할 때 비슷한 문제가 발생합니다.

새 프로젝트를 만들면 프로젝트가 저장됩니다

./path/to/pro/ject/YourProject/YourProject.**proj

ject폴더에 직접 넣고 싶다고 가정 해 봅시다 .

./path/to/pro/ject/YourProject.**proj

이 작업을 수행하는 해결 방법은 경로의 마지막 부분을 이름으로 사용하여 프로젝트를 작성하여 추가 디렉토리를 작성하지 않는 것입니다.

./path/to/pro/ject/ject.**proj

이제 Visual Studio 내에서 프로젝트의 이름을 바꾸면 Visual Studio를 떠나지 않고도 목표를 달성 할 수 있습니다.

./path/to/pro/ject/YourProject.**proj

이 방법의 단점은 기본 네임 스페이스와 출력 바이너리의 이름도 조정해야하며 프로젝트 템플릿에 포함 된 모든 파일에서 네임 스페이스를 업데이트해야한다는 것입니다.


0

Visual Studio 2013 및 TFS 2013을 사용합니다.

나는 이렇게했다 :

  1. 솔루션 자체를 열지 않고 Visual Studio를 열고 소스 제어 탐색기 를 사용 하여 프로젝트 폴더를 찾고 이름을 바꿉니다.
  2. 소스 제어 탐색기 에서 솔루션 파일을 두 번 클릭하여 솔루션 을여십시오.
  3. 당신은 질문 수 : ". 프로젝트는 최근이 솔루션에 추가 된 당신이 소스 제어에서 그들을 얻을 하시겠습니까?" 을 선택합니다 Yes.
  4. 이제 폴더와 프로젝트 구조가 있지만 이제는 파일이므로 소스 제어에서 최신 버전을 얻습니다.
  5. 변경 사항을 작성하고 커밋하십시오.

Windows 탐색기가 없습니다. 결국, 모든 로컬 파일을 삭제하고 소스 제어에서 전체 (깨끗한) 프로젝트를 얻을 수 있습니다.
Muris

폴더 재 배열로 인해 솔루션 파일이 일부 프로젝트가 저장된 빈 폴더를 생성하는 것도 가능하다는 것을 알았습니다. 그런 다음 메모장에서 솔루션 파일을 열고 생성 된 빈 디렉토리 수로 SccNumberOfProjects 속성 수를 선언하고 해당 SccProjectUniqueName #, SccProjectName #, SccLocalPath # 및 같은 #을 가진 다른 속성을 삭제하십시오.
Muris

0

Visual Studio 2013 업데이트 1에서 테스트되었으며 TFS 연결 프로젝트에 적용 할 수있는 더 간단한 접근 방식이 있습니다.

  • Visual Studio를 열고 솔루션을 닫습니다.
  • 소스 탐색기를 열고 원하는 폴더의 이름을 바꿉니다 (먼저 폴더를 닫지 않은 경우 솔루션이 닫힙니다).
  • 솔루션을 마우스 오른쪽 단추로 클릭하고 ( 소스 탐색기 에서도) 체크인을 선택하십시오.
  • 솔루션을 엽니 다. 새로운 프로젝트가 추가되었다는 메시지가 나타납니다. 변경 사항을 적용합니다.
  • 솔루션에서 프로젝트를 제거하고 다시 추가 한 후 체크인하십시오.
  • 내부 참조가 올바른지 확인하십시오.

0

가장 간단한 방법은 창의 속성으로 이동하여 기본 네임 스페이스의 이름을 변경 한 다음 이름 바꾸기를 수행하는 것입니다.


당신이 말하는 창은 무엇입니까? 프로젝트의 속성 창을 의미합니까?
Peter Mortensen

0
  1. Visual Studio 외부에서 프로젝트 이름을 바꿉니다.
  2. 텍스트 편집기를 사용하여 your_project_name.sln 을 편집 하고 새 경로의 경로 이름을 바꾸십시오.

1
그것은 현재 솔루션과 비슷하고 조금 더 어려워 보입니다.
bowlturner

0

나는 다음을 수행했다.

<전체 폴더의 백업 생성>

  1. Visual Studio 2013 내에서 프로젝트 이름을 바꿉니다 (선택적 / 필요하지 않음).

  2. 프로젝트를 템플릿으로 내 보냅니다.

  3. 솔루션을 닫습니다.

  4. 솔루션을 다시여십시오

  5. 저장된 템플릿에서 프로젝트를 생성하고 원하는 이름을 사용하십시오.

  6. 솔루션 탐색기에서 이전 프로젝트를 삭제하십시오.

이 시점에서 나는 새로운 솔루션을 컴파일하려고 시도했으며, 그렇게하기 위해 이전 프로젝트 폴더에서 새로운 프로젝트 폴더로 일부 리소스와 헤더를 수동으로 복사해야했습니다. 오류없이 컴파일 될 때까지이 작업을 수행하십시오. 이제이 새 프로젝트는 " .exe"파일을 이전 폴더에 저장했습니다. *

그래서->

  1. Windows 탐색기로 이동하여 솔루션 파일을 이전 프로젝트 폴더에서 새 프로젝트 폴더로 수동으로 복사하십시오.

  2. 솔루션을 닫고 새 프로젝트 내에서 솔루션을여십시오.

  3. 필요한 경우 구성을 다시 (x64)로 변경했습니다.

  4. 솔루션의 폴더에서 이전 이름의 프로젝트 폴더를 삭제하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.