Visual Studio 2013에서 기존 솔루션을 GitHub에 추가하는 방법


208

VS 2013의 새로운 Git 통합에 대한 많은 웹 페이지를 살펴본 결과 기존 솔루션을 Github에 추가하는 것을 다루지 않습니다. 사실 Visual Studio Online 대신 GitHub를 사용하는 데 많은 도움이되지 않습니다.

누구나 기존 솔루션에서 시작하여 VS 2013의 도구를 사용하여 Github에 추가하는 방법을 말해 줄 수 있습니까?


커맨드 라인에서 왜 그렇게하지 않습니까? 약 5 개의 명령이어야합니다 (리포지토리 생성, 리포지토리에 프로젝트 추가 [2 명령], 원격 추가, 원격 푸시) ? 모든 명령은 잘 문서화되어 있습니다.
R0MANARMY

2
VS 용 github을 통해 추가하면 github 페이지에 "Visual Studio로 열기"버튼이 추가됩니다. 미미하지만 유용한 :)
Ateik

답변:


348

좋아, 이것은 나를 위해 일했다.

  1. Visual Studio 2013에서 솔루션 열기
  2. 파일 | 소스 컨트롤에 추가
  3. Microsoft Git Provider를 선택하십시오.

로컬 GIT 저장소를 만듭니다.

  1. GitHub 서핑
  2. 새 리포지토리 생성 선택하지 마십시오. README로이 리포지토리를 초기화하십시오.

마스터 분기가없는 빈 저장소를 만듭니다.

  1. 일단 저장소를 열고 URL을 복사하십시오 (현재 버전의 화면 오른쪽에 있음)
  2. Visual Studio로 돌아 가기
    • 도구 / 옵션 / 소스 제어 / 플러그인 선택에서 Microsoft Git Provider가 선택되어 있는지 확인하십시오.
  3. 팀 탐색기 열기
  4. 홈 | 동기화되지 않은 커밋
  5. 노란색 상자에 GitHub URL을 입력하십시오 (SSH URL은 기본값으로 표시되지 않음).
  6. 게시를 클릭하십시오
  7. 홈 | 변경
  8. 커밋 코멘트 추가
  9. 드롭 다운에서 커밋 및 푸시를 선택하십시오.

귀하의 솔루션은 이제 GitHub에 있습니다


4
현재 ssh가 지원되지 않는다고 추가하고 싶습니다. 따라서 https 프로토콜을 사용해야합니다. 이미 잘못된 URL이 사용 된 경우 git remote set-url origin https : // ... 를 사용하여 변경할 수 있습니다.
Michael Dietrich

1
고마워, 이것은 나를 도왔다. github에서 initialize를 확인하면 나를 망치고있었습니다.
josha76

6
건을 뛰어 넘고 readme를 사용하여 리포지를 만든 경우 git shell (bash 또는 ps)을 열고 루트 디렉토리 유형 git remote rm origin에서 복구 할 수 있습니다. 그러면 VS2013의 URL 텍스트 상자가 다시 표시되고 원격 서버를 다시 추가 할 수 있습니다. VS에서 할 수있는 방법이 있지만 찾을 수 없습니다.
bob

4
게시를 클릭하면 다음과 같이 알려줍니다. You must commit changes to your local repository before you can publish.어떻게해야합니까? 로컬 리포지토리에 변경 내용을 커밋하려면 어떻게해야합니까?
마크 크라머

4
당신은 홈 | 변경. 그런 다음 노란색 상자에 커밋 메시지를 입력하고 커밋을 클릭하십시오.
Richard210363

82

Visual Studio 이외의 작업을 수행하지 않아도되는 훨씬 쉬운 방법이 있습니다.

  • Visual Studio에서 프로젝트를 엽니 다
  • 파일> 소스 제어에 추가
  • 팀 탐색기를 열고 버튼을 클릭 하고 " 동기화 "로 진행하면 " 게시물에 게시 "가 나타납니다. " 시작 "을 클릭하십시오
  • 저장소의 제목과 설명을 입력하십시오 (선택 사항).
  • " 게시 "를 클릭하십시오

그게 다야. Visual Studio github 플러그인은 자동으로 저장소를 생성하고 모든 것을 구성했습니다. 이제 홈을 클릭 하고 " 변경 "탭을 선택 하고 마지막 커밋을 커밋하십시오.


17
투표 수에 압도되지 마십시오. 이것은 적어도 VS2015에서 작동하며 훨씬 간단합니다.
dotNET

2
나는 github 것을 찾을 수 없었으므로 이것을 사용해야했다 : visualstudio.github.com
ʍѳђ ઽ ૯ ท

이것이 내가 찾던 것입니다. 그러나 내 경험은 약간 달랐습니다. 내가 쳤을 때 Add to source control, 나는 자동으로 생성 된 로컬 git 저장소 인 것처럼 보이는 것에 첫 번째 커밋을 추가하기 위해 화면으로 직접 가져 왔습니다. VS2015 커뮤니티.
parker.sikand

3
이 솔루션은 VS2015 용 Github 확장 프로그램이 설치되어 있다고 가정합니다. 위에서 설명한 주석처럼 여기에서 얻을 수 있습니다. visualstudio.github.com
Greg

2
이 방법을 사용하여 VS2017 솔루션을 로컬 Gogs 저장소로 푸시했습니다.
Peter M

12

이 질문은 Richard210363에 의해 이미 정확하게 답변되었습니다.

그러나 나는 이것을 할 수있는 또 다른 방법이 있음을 지적하고 문제를 일으킬 수 있기 때문에이 대체 접근법을 피해야 한다고 경고하고 싶습니다 .

R0MANARMY가 원래 질문에 대한 주석에서 언급했듯이 git 명령 줄이나 Git Gui을 사용하여 기존 솔루션 폴더에서 저장소를 만들 수 있습니다. 그러나 이렇게하면 빌드 출력 (bin / obj / 폴더) 사용자 옵션 파일 (.suo, .csproj.user) 및 솔루션에있을 수있는 많은 다른 파일을 포함하여 해당 폴더 아래의 모든 파일을 repo에 추가합니다 폴더에 있지만 리포지토리에 포함하고 싶지 않습니다. 이것의 원하지 않는 부작용 중 하나는 로컬로 빌드 한 후에 빌드 변경이 "변경 사항"목록에 표시된다는 것입니다.

Visual Studio에서 "파일 선택 | 소스 제어에 추가"를 사용하여 추가하면 올바른 프로젝트 및 솔루션 파일이 지능적으로 포함되고 다른 파일은 제외됩니다. 또한 나중에 원하지 않는 파일이 리포지토리에 추가되는 것을 방지하는 .gitignore 파일을 자동으로 만듭니다.

이러한 원치 않는 파일을 포함하는 저장소를 이미 작성한 후 나중에 .gitignore 파일을 추가하는 경우, 원치 않는 파일은 여전히 ​​저장소의 일부로 남아 있으며 수동으로 제거해야합니다. repo를 올바른 방법으로 작성하여 다시 시작하십시오.


MaKiPL이 위에서 제안한 방법을 사용했습니다. 효과가있었습니다. 그리고 jjjjs에 설명 된 단점이 없었습니다. MaKiPL이 제안한 방법이 Git 명령을 사용하는 것보다 훨씬 쉽다는 것을 알았습니다.
glenn garson

6
  • 팀 탐색기 메뉴에서 Git 저장소 섹션에서 "추가"를 클릭하십시오 (로컬 Git 저장소에 솔루션 디렉토리를 추가해야합니다)
  • 팀 탐색기에서 솔루션을 엽니 다 (추가 된 솔루션을 마우스 오른쪽 버튼으로 클릭-열기)
  • 커밋 버튼을 클릭하고 "푸시"링크를 찾으십시오.

Visual Studio는 이제 GitHub 자격 증명을 요청한 다음 솔루션 업로드를 진행해야합니다.

Team Foundation과 함께 작동하기 위해 Windows 계정을 Visual Studio에 연결했기 때문에 계정없이 작동하는지 알 수 없으므로 Visual Studio는 커밋을 추적하므로 로그인하지 않은 경우 먼저 요청합니다.


3
팀 탐색기에 추가 및 Git 섹션이 없습니다
Richard210363

4

글쎄, 나는이 질문이 Visual Studio GUI와 관련이 있다는 것을 이해하지만 어쩌면 asker는이 트릭을 시도 할 수 있습니다. 이 문제를 해결하는 데 다른 관점을 제공하십시오.

GIT에 터미널을 많이 사용하고 싶습니다. 간단한 단계는 다음과 같습니다.

전제 조건 ...

  • Linux 또는 MAC 인 경우 머신에 git 패키지가 설치되어 있어야합니다.
  • Windows 인 경우 git bash 소프트웨어를 다운로드 할 수 있습니다

지금,

  1. Goto Github.com
  2. 계정에서 새 리포지토리를 만듭니다.
  3. 저장소 안에 파일을 작성하지 마십시오. 비워 두십시오. URL을 복사하십시오. https://github.com/Username/ProjectName.git 과 같아야합니다.

  4. 터미널을 열고 Visual Studio Project 디렉토리로 리디렉션

  5. 자격 증명 구성

    git config --global user.name "your_git_username"
    git config --global user.email "your_git_email"
    
  6. 그런 다음이 명령을 입력하십시오

    git init
    git add .
    git commit -m "First Migration Commit"
    git remote add origin paste_your_URL_here
    git push -u origin master
    

완료 ... 도움이 되길 바랍니다


마지막 줄 에서이 git push -u origin master에는 로컬에없는 작업이 포함되어 있다는 원격 오류가 발생했습니다 (새로 작성되어 비어 있음). 그런 다음 다시 당기려고 할 때. "현재 지점에 대한 추적 정보가 없습니다"Git은 미스터리입니다
Blue Clouds

링크 는 위에서 언급 한 명령에 대한 설명을 제공합니다
Tendai Mare

실제로 작동한다. 감사합니다 ...
:)

0

내 문제는 원격 URL에 https를 사용할 때 작동하지 않으므로 http를 대신 사용한다는 것입니다. 이를 통해 팀 탐색기에서 GitHub와 즉시 게시 / 동기화 할 수 있습니다.


"작동하지 않는"의 의미를 알고 있었기 때문에 이것이 내가 가진 문제와 관련이 있는지 더 잘 알았습니다.
user34660

0

내 대답과 관련된 대답은 없었으므로 여기에 내가 한 방법이 있습니다.

이것은 Visual Studio 2015 용이며 이미 Github.com에 리포지토리를 만들었습니다.

리포지토리 URL이 이미있는 경우이를 복사 한 다음 Visual Studio에서 :

  • 팀 탐색기로 이동
  • "동기화"버튼을 클릭하십시오
  • "시작"링크와 함께 3 가지 옵션이 나열되어 있어야합니다.
  • 나는 "원격 저장소에 공개"에 대해 "시작"링크를 선택했다.
  • URL을 묻는 노란색 상자가 나타납니다. URL을 붙여 넣고 게시를 클릭하십시오.

0

VS2017에서는 몇 번의 클릭이 적고 로컬 리포지토리가 Git 클론보다 앞서있는 경우 팝업 프로젝트 메뉴에서 소스 제어를 클릭하십시오 . 팀 탐색기 변경 사항 대화 상자가 표시됩니다. 설명을 입력하십시오-여기에 "스택 오버 플로우 커밋 예 ". 제공되는 세 가지 옵션 중 하나를 선택 하십시오 . 여기에 모두 설명되어 있습니다 .

여기에 이미지 설명을 입력하십시오


여기에 이미지 설명을 입력하십시오

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