Visual Studio 2022는 Git 메뉴, Git 변경 내용 및 솔루션 탐색기 상황에 맞는 메뉴를 사용하여 Git 버전 제어 환경을 제공합니다. Visual Studio 2019 버전 16.8은 팀 탐색기 Git 사용자 인터페이스도 제공합니다. 자세한 내용은 Visual Studio 2019 - 팀 탐색기 탭을 참조하세요.
Visual Studio는 파일을 마지막으로 커밋된 버전으로 되돌리기 커밋되지 않은 파일 변경 내용을 카드 지원합니다.
Git 변경 내용 창에서 해제하려는 변경 내용으로 파일을 식별합니다카드. 파일이 스테이징된 변경 내용 섹션에 있는 경우 마우스 오른쪽 단추로 클릭하고 스테이징 해제를 선택합니다. 스테이징되지 않은 파일이 변경 내용 섹션에 표시됩니다.
파일이 변경 내용 섹션에 있는 경우 파일을 마우스 오른쪽 단추로 클릭하고 변경 내용 취소를 선택하여 취소합니다카드 마지막 커밋 이후 파일의 모든 변경 내용입니다.
Visual Studio 2019는 Git 메뉴, Git 변경 내용 및 솔루션 탐색기 상황에 맞는 메뉴를 사용하여 Git 버전 제어 환경을 제공합니다.
Visual Studio는 파일을 마지막으로 커밋된 버전으로 되돌리기 커밋되지 않은 파일 변경 내용을 카드 지원합니다.
Git 변경 내용 창에서 해제하려는 변경 내용으로 파일을 식별합니다카드. 파일이 스테이징된 변경 내용 섹션에 있는 경우 마우스 오른쪽 단추로 클릭하고 스테이징 해제를 선택합니다. 스테이징되지 않은 파일이 변경 내용 섹션에 표시됩니다.
파일이 변경 내용 섹션에 있는 경우 파일을 마우스 오른쪽 단추로 클릭하고 변경 내용 취소를 선택하여 취소합니다카드 마지막 커밋 이후 파일의 모든 변경 내용입니다.
Visual Studio는 파일을 마지막으로 커밋된 버전으로 되돌리기 커밋되지 않은 파일 변경 내용을 카드 지원합니다.
팀 탐색기의 변경 내용 보기에서 해제하려는 변경 내용으로 파일을 식별합니다카드. 파일이 스테이징된 변경 내용 섹션에 있는 경우 마우스 오른쪽 단추로 클릭하고 스테이징 해제를 선택합니다. 스테이징되지 않은 파일이 변경 내용 섹션에 표시됨
파일이 변경 내용 섹션에 있는 경우 파일을 마우스 오른쪽 단추로 클릭하고 변경 내용 취소를 선택하여 취소합니다카드 마지막 커밋 이후 파일의 모든 변경 내용입니다.
Git checkout 명령을 사용하여 파일을 마지막으로 커밋된 버전으로 되돌리기 파일의 커밋되지 않은 변경 내용을 카드 수 있습니다.
git checkout <file>
예를 들어 파일에 git checkout README.md 대한 커밋되지 않은 변경 내용 README.md 이 카드.
또한 Git checkout 은 커밋을 고유하게 식별하는 부분 또는 전체 커밋 ID 지정할 때 이전에 커밋된 버전으로 파일을 되돌리기 지원합니다.
Git checkout 명령을 사용하여 파일을 되돌리기 일반적인 용도와는 다릅니다. 이는 분기 간을 전환하는 것입니다. 명령 출력은 checkout 분기 간 전환 또는 파일 업데이트 여부를 알려주며, 수행하려는 파일이 명확하지 않은 경우 경고합니다.
분기를 이전 상태로 되돌리기
Git 재설정을 사용하여 분기를 이전 커밋으로 다시 설정하여 분기를 이전 상태로 되돌리기 수 있습니다. Git reset 은 모든 분기 폴더의 모든 파일에 영향을 줍니다.
Git reset 에는 몇 가지 옵션이 있습니다. 기본 옵션은 분기를 이전 커밋에 되돌리기 커밋되지 않은 변경 내용으로 모든 후속 변경 내용을 유지하는 것입니다. 또 다른 옵션은 해당 커밋 이후 모든 분기 파일에 대한 모든 변경 내용을 카드 해제하여 이전 커밋에 분기를 되돌리기 것입니다.
Warning
마지막 커밋이 푸시되고 다른 사용자와 공유된 경우 마지막 커밋 전에 분기를 커밋으로 다시 설정하지 마세요. 이렇게 하면 로컬 분기 기록이 더 이상 원격 분기 기록과 일치하지 않습니다. 공유 분기의 경우 공유 커밋에 의해 변경된 내용 실행 취소를 참조하세요.
현재 분기의 기록 탭에서 다시 설정할 커밋을 마우스 오른쪽 단추로 클릭한 다음 변경 내용 다시 설정>(--하드)을 선택하여 분기를 선택한 커밋으로 다시 설정하고 해당 커밋 이후 모든 분기 파일에 대한 모든 변경 내용을 삭제합니다. 또는 변경 내용 유지(--혼합)를 선택하여 > 분기를 선택한 커밋으로 다시 설정하고 모든 후속 변경 내용을 스테이징되지 않은 변경 내용으로 유지합니다.
메뉴 모음에서 Git > 보기 분기 기록을 선택하여 현재 분기의 기록 탭을 엽니다.
현재 분기의 기록 탭에서 다시 설정할 커밋을 마우스 오른쪽 단추로 클릭한 다음 변경 내용 다시 설정>(--하드)을 선택하여 분기를 선택한 커밋으로 다시 설정하고 해당 커밋 이후 모든 분기 파일에 대한 모든 변경 내용을 삭제합니다. 또는 변경 내용 유지(--혼합)를 선택하여 > 분기를 선택한 커밋으로 다시 설정하고 모든 후속 변경 내용을 스테이징되지 않은 변경 내용으로 유지합니다.
팀 탐색기의 변경 내용 보기에서 작업 > 보기 기록을 선택하여 현재 분기의 기록 탭을 엽니다.
현재 분기의 기록 탭에서 다시 설정할 커밋을 마우스 오른쪽 단추로 클릭한 다음 변경 내용 다시 설정>(--하드)을 선택하여 분기를 선택한 커밋으로 다시 설정하고 해당 커밋 이후 모든 분기 파일에 대한 모든 변경 내용을 삭제합니다. 또는 변경 내용 유지(--혼합)를 선택하여 > 분기를 선택한 커밋으로 다시 설정하고 모든 후속 변경 내용을 스테이징되지 않은 변경 내용으로 유지합니다.
Git reset 을 사용하여 이전 커밋에서 분기를 해당 상태로 되돌리기 수 있습니다. Git reset 명령은 다양한 플래그와 함께 사용할 수 있습니다.
플래그는 --hard 지정된 커밋으로 분기를 재설정하고 모든 후속 변경 내용을 카드 Git에 지시합니다. 이 옵션을 사용하면 작업이 손실될 수 있으므로 이 옵션에 주의해야 합니다.
플래그는 --mixed 지정된 커밋으로 분기를 다시 설정하지만 모든 후속 변경 내용을 스테이징되지 않은 변경 내용으로 유지하도록 Git에 지시합니다. 이 옵션이 기본값입니다.
플래그는 --soft 지정된 커밋으로 분기를 다시 설정하지만 모든 후속 변경 내용을 이전 상태에 따라 스테이징 및 스테이징되지 않은 변경 내용으로 유지하도록 Git에 지시합니다.
Git reset 의 일반적인 사용은 --hard 마지막 커밋 이후 모든 파일에서 커밋되지 않은 모든 변경 내용을 카드 옵션을 사용하는 것입니다.
git reset --hard
마지막 커밋과 다른 커밋으로 분기를 하드 다시 설정하려면 커밋을 고유하게 식별하는 커밋 ID 또는 부분 커밋 ID 지정합니다.
Git 되돌리기 사용하여 커밋에서 변경한 내용을 취소하여 해당 변경 내용을 되돌리는 새 커밋을 만들 수 있습니다. Git은 revert 원래 커밋을 삭제하지 않습니다. 이 방법은 Git revert 이 이전 커밋 기록을 변경하지 않으므로 공유 커밋의 변경 내용을 실행 취소하는 데 적합하므로 로컬 및 원격 분기 기록이 계속 일치합니다.
현재 분기의 기록 탭에서 되돌리기 커밋을 마우스 오른쪽 단추로 클릭하고 되돌리기를 선택하여 선택한 커밋의 변경 내용을 취소하는 새 커밋을 만듭니다.
메뉴 모음에서 Git > 보기 분기 기록을 선택하여 현재 분기의 기록 탭을 엽니다.
현재 분기의 기록 탭에서 되돌리기 커밋을 마우스 오른쪽 단추로 클릭하고 되돌리기를 선택하여 선택한 커밋의 변경 내용을 취소하는 새 커밋을 만듭니다.
팀 탐색기의 변경 내용 보기에서 작업 > 보기 기록을 선택하여 현재 분기의 기록 탭을 엽니다.
현재 분기의 기록 탭에서 되돌리기 커밋을 마우스 오른쪽 단추로 클릭하고 되돌리기를 선택하여 선택한 커밋의 변경 내용을 취소하는 새 커밋을 만듭니다.
Git revert 명령을 사용하여 커밋에 의해 변경된 내용을 실행 취소하고 반전된 변경 내용으로 새 커밋을 만들 수 있습니다. 변경 내용이 Git 기록에서 다시 기본 변경된 커밋입니다.
git revert <commit ID>
되돌리기 작업에 성공하면 Git에서 새 커밋에 대한 커밋 메시지 입력하라는 메시지가 표시되는 편집기 창을 엽니다.
되돌리기 작업 중에 충돌이 있는 경우 Git에서 사용자에게 알립니다. 충돌을 해결한 다음 실행하거나 실행 git revert --continuegit revert --abort 하여 되돌리기 작업을 실행 취소할 수 있습니다.
커밋 ID 찾기
Git log 명령을 사용하여 커밋의 ID를 가져올 수 있습니다. 플래그는 --oneline 출력을 축약합니다.
git log --oneline <branch>
Git log 명령은 지정된 분기의 끝에 있는 커밋(지정되지 않은 경우 현재 분기)부터 시작하여 가장 최근의 커밋을 먼저 나열한 다음 상위 커밋을 통해 뒤로 반복합니다. 약식 출력의 각 커밋 ID 커밋을 고유하게 식별하는 부분 SHA-1 검사sum입니다. 예를 들어 다음을 git log --oneline main 출력할 수 있습니다.
e745d06 (HEAD -> main) Add a test initialization class
31da50b Add network switch test
0c14391 Add readme file
32e3946 Add project files.