기존 프로젝트를 Git 소스 제어 아래에 두려고하는데 몇 가지 사항이 명확하지 않습니다.
온라인으로 'Team Foundation Service'Git 계정을 설정했습니다.
현재 프로젝트 폴더에 ASP.NET MVC 4 솔루션이 있습니다. Git '리포지토리'를 로컬로 만들었습니다 (현재 빈 폴더). 이것이 프로젝트의 현재 애플리케이션 폴더 여야합니까? 아니면 사본이어야합니까?
기존 파일을 온라인 저장소로 가져 오려면 어떻게합니까?
기존 프로젝트를 Git 소스 제어 아래에 두려고하는데 몇 가지 사항이 명확하지 않습니다.
온라인으로 'Team Foundation Service'Git 계정을 설정했습니다.
현재 프로젝트 폴더에 ASP.NET MVC 4 솔루션이 있습니다. Git '리포지토리'를 로컬로 만들었습니다 (현재 빈 폴더). 이것이 프로젝트의 현재 애플리케이션 폴더 여야합니까? 아니면 사본이어야합니까?
기존 파일을 온라인 저장소로 가져 오려면 어떻게합니까?
답변:
비슷한 질문을 찾아 다녔습니다. 기존 프로젝트 파일에 대한 Git 리포지토리를 초기화하는 방법은 다음과 같습니다 (면책 조항 : Team Foundation Server 설정없이 Visual Studio 2013 Express에서 수행됨).
그것은 나를 위해 해냈습니다-Git이 당신을 위해 설정되었다고 가정하면 메뉴 보기 → 팀 탐색기 로 이동 한 다음 프로젝트 파일의 저장소를 두 번 클릭하고 초기 커밋을 만들 수 있습니다 (원하는 파일을 추가하십시오) ).
git init
솔루션 폴더에서 수행하십시오. 이것이 저장소 폴더를 만드는 적절한 방법입니다..gitignore
파일을 설정하여 불필요한 것을 커밋하지 마십시오.git add
git commit
git remote add origin <proper URL>
git push
당신의 코드또는 Visual Studio 통합을 사용하는 자세한 가이드가 여기에 있습니다 .
Visual Studio를 둘러 본 후 마침내 필요한 것보다 훨씬 오래 걸린 답을 찾았습니다.
소스 제어없이 기존 프로젝트를 가져와 기존 EMPTY (중요 함) GitHub 저장소에 저장하려면 프로세스가 간단하지만 까다 롭습니다. 첫 번째 경향은 팀 탐색기를 사용하는 것이기 때문입니다. 문제가 있습니다.
먼저 소스 제어에 추가하십시오. 위에 그에 대한 설명이 몇 가지 있으며 모두가 여기까지 이해합니다.
이제 빈 LOCAL 저장소가 열리고 아무도 말하지 않는 트릭은 팀 탐색기를 완전히 무시하고 솔루션 탐색기로 이동하여 솔루션을 마우스 오른쪽 단추로 클릭하고 커밋을 클릭하는 것입니다.
그런 다음 기존 솔루션과 로컬 저장소 간의 모든 차이점을 커밋하여 기본적으로 이러한 모든 새 파일로 업데이트합니다. 기본 커밋 이름 '초기 파일'또는 보트에 떠 다니는 모든 것을 지정하고 커밋하십시오.
그런 다음 다음 화면에서 동기화 를 클릭 하고 EMPTY GitHub 저장소 URL에 놓기 만하면 됩니다. 비어 있는지 확인하십시오. 그렇지 않으면 마스터 분기 충돌이 발생하여 허용되지 않습니다. 따라서 새 저장소를 사용하거나 이전에 망친 저장소를 삭제하십시오. 이것은 Visual Studio 2013이므로 마일리지가 다를 수 있습니다.
솔루션을 마우스 오른쪽 단추로 클릭 하고 소스 제어에 추가를 선택 하십시오 . 그런 다음 Git을 선택합니다.
이제 프로젝트가 로컬 소스 제어에 추가되었습니다. 파일 중 하나를 마우스 오른쪽 버튼으로 클릭하고 Commit을 선택 합니다.
그런 다음 커밋 메시지를 입력하고 Commit을 선택 합니다. 그런 다음 동기화 를 선택 하여 프로젝트를 GitHub와 동기화합니다. Git 저장소가 필요합니다. GitHub로 이동하여 새 리포지토리를 만들고 리포지토리 링크를 복사 한 다음 원격 소스 제어 서버에 추가합니다. 게시를 선택 합니다.
그게 다야.
SourceTree 사용 :
솔루션 탐색기에서 솔루션 이름을 마우스 오른쪽 단추로 클릭합니다. "소스 제어에 추가"를 선택합니다 .
그런 다음 SourceTree로 이동하여 Clone / New를 선택하십시오 . 작업 폴더 추가를 선택 하고 방금 솔루션 내부에 만든 새 Git 위치를 가리 킵니다.
빈 Git (Bitbucket 또는 GitHub)의 클론 주소를 가져 와서 SourceTree로 돌아가서 Remotes를 마우스 오른쪽 버튼으로 클릭 하고 New Remote를 추가 합니다 . (최신 버전에서는 Repositories → Add Remote ... 로 이동 하십시오 . 해당 상자에 URL을 붙여넣고을 누르십시오 OK.
이것이 초기 커밋과 푸시를 만드는 방법입니다.
가장 쉬운 방법은 MSDN 문서 Visual Studio 2017 및 VSTS Git와 코드 공유에 설명 된대로 분명히 있습니다.
Visual Studio 2015에서 마침내 작동하게 된 유일한 방법 git init
은 명령 줄을 사용하여 디렉터리의 루트에서 실행 하는 것입니다. 그런 다음 Team Explorer로 이동하여 로컬 git 저장소를 추가했습니다. 그런 다음 해당 로컬 git 저장소를 선택하고 설정-> 저장소 설정으로 이동하여 원격 저장소를 추가했습니다. 이것이 마침내 Visual Studio를 통합하여 기존 프로젝트를 git과 함께 사용할 수 있었던 방법입니다.
나는 모든 답변을 읽었지만 그들 중 어느 것도 나를 위해 일하지 않았습니다. 기본적으로와 동일한 작업을 수행한다고 가정 한 File-> Add To Source Control로 이동 git init
했지만 Team Explorer로 이동할 때 모든 옵션이 회색으로 표시 되었기 때문에 프로젝트를 초기화하지 않은 것 같습니다. 또한 변경 대화 상자에도 아무것도 표시되지 않습니다. 또 다른 대답은 Team Explorer에서 로컬 리포지토리를 생성해야하고 변경 사항이 표시되지만 작동하지 않는다고 말했습니다. 팀 탐색기의 모든 Git 옵션은 명령 줄을 통해 프로젝트를 초기화 한 후에 만 작동했습니다.
저는 Visual Studio를 처음 사용하므로 분명한 것을 놓쳤는 지 모르겠지만 내 프로젝트가 Visual Studio에서 초기화되지 않은 것 같습니다.
먼저 원하는 상대 경로로 '솔루션 폴더'를 만듭니다. Visual Studio 2012는 동일한 상대 경로로 시스템 폴더를 만들지 않습니다.
이제 그 '솔루션 폴더'안에 새 프로젝트를 추가하지만, 시스템의 상대 경로가 새 '솔루션 폴더'의 상대 경로와 일치하도록 정의 할 때주의해야합니다. 원하는 시스템 폴더가없는 경우 Visual Studio 2012는 이제 새 프로젝트에 대해 폴더를 만듭니다. (위에서 언급했듯이 새 '솔루션 폴더'를 추가하면이 작업이 수행되지 않습니다.)
상대 경로가 일치하는 기존 파일을 추가하려면 먼저 Visual Studio 외부에서 일치하는 시스템 상대 경로에 파일을 만들어야합니다. 그런 다음 Visual Studio에서 기존 파일 을 추가 할 수 있습니다 .
Visual Studio의 Git-기존 프로젝트 추가 ; GitHub, GitLab 등의 프로젝트에 로컬 저장소를 게시하는 방법.
따라서 솔루션을 만들었고 어딘가에 Git 계정을 통해 업로드하고 versioncontroller를 원합니다. Visual Studio 2015에는이를위한 도구가 팀 탐색기에 있습니다.
Meuep이 언급했듯이 솔루션을로드 한 다음 File
>> 를 탐색 Add to Source Control
합니다. 이것은 git init
. 그러면 다음이 있습니다.
이제 Settings
>>를 선택 Repository Settings
하고 리모컨으로 스크롤합니다 .
설정 origin
(이 예약 된 이름을 거기에 넣어야 함)하고 URI를 설정합니다.
그런 다음 Add
, Sync
및을 사용할 수 있습니다 Publish
.
GitHub와 함께 VS2017 / VS2019의 프로세스가 크게 단순화되었습니다 (아마도 더 일찍 수행되었지만 테스트하지는 않았습니다).
GitHub => https://github.com/ /.git 에 빈 저장소 만들기
다음 지침을 따르십시오 . (선택적으로 소스 제어에 git initialize에 추가)-> 팀 탐색기-> 동기화-> GitHub에 게시-> https://github.com/ /.git
나를 위해 Git 저장소 (GitHub가 아님)가 이미 생성되었지만 비어 있습니다. 이것은 기존 프로젝트를 Git 저장소에 추가하기위한 솔루션이었습니다.
.gitignore
파일을 추가했습니다 .이 모든 작업이 Git Extensions와 같은 도구없이 Visual Studio 2015에서 직접 수행되는 것을 보는 것은 흥미로울 것입니다. 그러나 Visual Studio에서 시도한 작업이 작동하지 않았습니다 ( 내 프로젝트에서 소스 제어에 추가를 사용할 수 없으며 원격을 추가 할 수 없습니다. 도움 등).
나는 항상 이것을 잊어 버리므로 이것은 나 자신을 위해 더 많지만 VS를 사용하는 다른 사람을 도울 수 있습니다.
Visual Studio에는 솔루션이라는 개념이 있습니다. 그러나 git에서는 로컬 및 원격 분기에서 추적하는 git 저장소의 개념이 있습니다. git에 추가되는 모든 파일과 폴더는 로컬입니다.
이제 Visual Studio 솔루션으로 돌아가서 표준 템플릿 프로젝트를 만들면 해당 솔루션에 로컬로 모든 프로젝트를 만듭니다.
따라서 문제는 솔루션 또는 해당 문제에 대해 git에 로컬이 아닌 프로젝트를 추가 할 때 발생합니다. 솔루션 파일 .sln이 프로젝트 위치로 업데이트되지만 프로젝트, 프로젝트 파일 및 폴더의 실제 내용은 별도의 디렉터리 나 별도의 네트워크 드라이브 또는 하나의 일부 FTP 서버에 있기 때문에 git에 추가 할 수 없습니다. etc .... 이것은 .sln 파일로만 컴파일되는 프로젝트 파일에 대한 참조 만 원하거나 별도의 git 또는 github 저장소에 소스를 지정하려는 경우에 바람직 할 수 있습니다. 그러나 실제 파일이 git에 의해 로컬로 추적되는 것을 원하지는 않습니다.
이 문제를 해결하려면 (즉, git 저장소에 추가하려는 경우) 솔루션 및 해당 프로젝트 파일의 범위 내에서 관심있는 원격 파일을 로컬로 이동하면됩니다.
다음은 Visual Studio 2015에서 수행하는 방법입니다.
프로젝트를 열고 Tools >> Options >> "Source Control"탭으로 이동하여 "Git"를 소스 제어로 선택하십시오.
파일 메뉴로 이동하여 "소스 제어에 추가"를 선택하십시오.
이것이하는 일은 본질적으로 Visual Studio가 모든 종소리와 휘파람을 생성하여 "git init"를 실행하는 것입니다 (사용자 별 파일, 임시 파일, 디렉토리 등을 무시하는 것과 같이 파일을 무시하도록 설정).
기본적으로 git 저장소가 로컬에서 올바르게 생성되었습니다 (이 폴더에는 무시할 파일이 많이 포함되어 있으므로 VS 프로젝트의 주요 단계입니다).
이제이 git 리포지토리를 git bash (Visual Studio 외부)의 GitHub, BitBucket 등과 같은 다른 git에 연결할 수 있습니다.
이제이 작업 디렉토리에서 Git Bash 세션을 시작하고 BitBucket을 사용하기 때문에 거기에 제공된 지침을 따릅니다 (아래 행을 복사합니다).
git remote add origin https : //yourusername@bitbucket.org/yourusername/hookdemo.git
git push -u origin master
그게 다야.
이제 제대로 설정되었으므로 git 명령 줄 자체에서 저장소를 관리 할 수 있습니다.