Git 리모트가 SSH 로 구성되었는지 확인하는 방법

GitBeginner
지금 연습하기

소개

이 랩에서는 Git 리모트가 SSH 프로토콜을 사용하여 구성되었는지 확인하는 방법을 배우게 됩니다. 먼저, git remote -v 명령을 사용하여 저장소에 구성된 리모트 URL 을 확인하는 것으로 시작합니다.

다음으로, 리모트 URL 내에서 SSH 프로토콜 형식을 식별하는 방법을 배우게 됩니다. 마지막으로, 리모트 저장소에 연결하기 위해 HTTPS 와 SSH 를 사용하는 것의 차이점에 대해 간략하게 살펴보겠습니다.

git remote -v 실행하여 URL 확인

이 단계에서는 Git 저장소와 관련된 리모트 URL 을 확인하는 방법을 배우겠습니다. Git 에서 "리모트 (remote)"는 기본적으로 GitHub, GitLab 또는 Bitbucket 과 같은 플랫폼에서 호스팅되는 다른 버전의 저장소에 대한 링크입니다. 저장소를 복제 (clone) 하면 Git 은 자동으로 origin이라는 이름의 리모트를 설정하여 원래 저장소의 URL 을 가리킵니다.

현재 저장소에 대해 어떤 리모트 URL 이 구성되어 있는지 확인하려면 git remote -v 명령을 사용합니다. -v 플래그는 "verbose"의 약자로, 변경 사항을 가져오기 (다운로드) 및 푸시 (업로드) 모두에 대한 URL 을 표시합니다.

먼저, 올바른 디렉토리에 있는지 확인해 보겠습니다. 프로젝트 디렉토리로 이동합니다.

cd ~/project/my-time-machine

이제 리모트 URL 을 확인하는 명령을 실행합니다.

git remote -v

이것은 아직 리모트에 연결되지 않은 새 저장소이므로 아무런 출력도 표시되지 않습니다. 이는 예상된 결과입니다! 이는 단순히 로컬 저장소가 현재 독립형이며 외부 저장소에 연결되지 않았음을 의미합니다.

리모트를 이해하는 것은 협업과 작업 백업에 매우 중요합니다. 다른 사람과 함께 작업하거나 GitHub 와 같은 플랫폼을 사용할 때 리모트와 지속적으로 상호 작용하게 됩니다. git remote -v 명령은 로컬 저장소가 어디에 연결되어 있는지 확인하는 방법입니다.

다음 단계에서는 리모트를 추가하는 방법과 URL 형식이 어떻게 다를 수 있는지 살펴보겠습니다.

URL 에서 SSH 프로토콜 확인

이전 단계에서 저장소에 아직 구성된 리모트가 없다는 것을 확인했습니다. 이제 리모트를 추가하고 특히 SSH 프로토콜 URL 형식을 살펴보겠습니다.

SSH (Secure Shell) 는 보안되지 않은 네트워크를 통해 컴퓨터에 안전하게 액세스할 수 있는 네트워크 프로토콜입니다. Git 의 맥락에서 SSH 를 사용하면 SSH 키를 사용하여 초기 설정을 한 후, 상호 작용할 때마다 사용자 이름과 비밀번호를 입력할 필요 없이 안전하게 리모트 저장소에 연결할 수 있습니다.

Git 저장소의 SSH URL 은 일반적으로 다음과 같은 형식을 갖습니다: git@hostname:username/repository.git. 예를 들어, GitHub 의 저장소는 git@github.com:octocat/Spoon-Knife.git와 같은 SSH URL 을 가질 수 있습니다.

가상의 SSH URL 을 사용하여 my-time-machine 저장소에 리모트를 추가해 보겠습니다. 이 리모트의 이름을 기본 리모트에 대한 일반적인 이름인 origin으로 지정합니다.

~/project/my-time-machine 디렉토리에 있는지 확인합니다.

cd ~/project/my-time-machine

이제 git remote add 명령을 사용하여 리모트를 추가합니다.

git remote add origin git@github.com:yourusername/my-time-machine.git

yourusername을 자리 표시자로 바꿉니다. 이는 URL 형식의 데모를 위한 것입니다. 이 명령은 지정된 SSH URL 을 가리키는 origin이라는 이름의 리모트를 추가합니다. 성공하면 아무런 출력을 생성하지 않습니다.

이제 git remote -v를 다시 사용하여 구성된 리모트를 확인해 보겠습니다.

git remote -v

다음과 유사한 출력이 표시되어야 합니다.

origin  git@github.com:yourusername/my-time-machine.git (fetch)
origin  git@github.com:yourusername/my-time-machine.git (push)

URL 형식 git@github.com:yourusername/my-time-machine.git에 주목하십시오. 이것이 SSH 프로토콜 형식입니다. git@로 시작하여 호스트 이름 (github.com), 콜론 : 및 저장소 경로 (yourusername/my-time-machine.git) 가 뒤따릅니다.

SSH URL 형식을 이해하는 것은 특히 변경 사항을 푸시해야 할 때 리모트 Git 저장소와 상호 작용하는 일반적인 방법이기 때문에 중요합니다. 이는 자격 증명을 반복적으로 입력하는 것보다 더 안전하고 편리한 방법을 제공합니다.

HTTPS vs SSH 테스트

이전 단계에서 SSH 프로토콜을 사용하여 리모트를 추가했습니다. Git 리모트와 상호 작용하는 또 다른 일반적인 프로토콜은 HTTPS 입니다. 차이점과 URL 이 어떻게 보이는지 살펴보겠습니다.

HTTPS (Hypertext Transfer Protocol Secure) 는 인터넷을 통한 보안 통신을 위한 표준 프로토콜입니다. Git 과 함께 HTTPS 를 사용하는 경우 일반적으로 사용자 이름과 비밀번호 또는 개인 액세스 토큰을 사용하여 인증합니다. Git 저장소의 HTTPS URL 은 일반적으로 https://로 시작합니다. 예를 들어, GitHub 의 동일한 가상 저장소에 대한 HTTPS URL 은 https://github.com/yourusername/my-time-machine.git입니다.

SSH 와 HTTPS 모두 장점이 있습니다. HTTPS 는 SSH 키를 생성하고 구성할 필요가 없으므로 일반적으로 초기 설정이 더 쉽습니다. 그러나 변경 사항 푸시와 같은 빈번한 상호 작용의 경우 SSH 는 초기 설정 후 반복적인 인증이 필요하지 않으므로 더 편리할 수 있습니다.

추가한 SSH 리모트를 제거하고 대신 HTTPS 리모트를 추가하여 git remote -v 출력의 차이점을 살펴보겠습니다.

먼저, ~/project/my-time-machine 디렉토리에 있는지 확인합니다.

cd ~/project/my-time-machine

이제 git remote remove 명령을 사용하여 기존 origin 리모트를 제거합니다.

git remote remove origin

이 명령은 origin이라는 이름의 리모트를 제거합니다. 성공하면 아무런 출력을 생성하지 않습니다.

리모트가 제거되었는지 확인해 보겠습니다.

git remote -v

출력이 없어야 하며, 이는 origin 리모트가 제거되었음을 확인합니다.

이제 동일한 가상 저장소를 리모트로 추가하되, 이번에는 HTTPS URL 을 사용해 보겠습니다.

git remote add origin https://github.com/yourusername/my-time-machine.git

다시, yourusername을 자리 표시자로 바꿉니다. 이 명령은 지정된 HTTPS URL 을 가리키는 origin이라는 이름의 리모트를 추가합니다.

마지막으로, git remote -v를 사용하여 리모트를 다시 확인해 보겠습니다.

git remote -v

이제 다음과 유사한 출력이 표시되어야 합니다.

origin  https://github.com/yourusername/my-time-machine.git (fetch)
origin  https://github.com/yourusername/my-time-machine.git (push)

이제 URL 형식이 https://로 시작하는 것을 확인하십시오. 이것이 Git 리모트에 대한 HTTPS 와 SSH 프로토콜 간의 URL 구조의 주요 차이점입니다.

실제 시나리오에서는 선호도와 사용 중인 Git 호스팅 플랫폼의 요구 사항에 따라 SSH 또는 HTTPS 를 선택합니다. 두 프로토콜 모두 널리 지원됩니다.

이제 리모트를 성공적으로 추가 및 제거하고 SSH 와 HTTPS URL 형식의 차이점을 확인했습니다. 이러한 이해는 리모트 저장소로 작업할 때 기본입니다.

요약

이 랩에서는 git remote -v 명령을 사용하여 Git 저장소에 대해 구성된 리모트 URL 을 확인하는 방법을 배웠습니다. 이 명령은 각 구성된 리모트에 대한 fetch 및 push URL 을 표시하며, 이는 일반적으로 GitHub 와 같은 플랫폼에서 호스팅되는 저장소의 다른 버전으로의 링크입니다. 리모트가 없는 새 저장소는 이 명령에 대한 출력을 표시하지 않는다는 것을 이해했습니다.

그런 다음 Git 리모트에 대한 SSH 프로토콜을 탐구하여 SSH 키를 사용한 초기 설정 후 자격 증명을 반복적으로 입력하지 않고도 리모트 저장소와 상호 작용하는 안전한 방법을 제공한다는 것을 인식했습니다. SSH URL 형식을 식별하는 방법을 배웠으며, 이는 HTTPS URL 과 다르며, git remote -v의 출력을 검사하여 리모트가 SSH 를 사용하도록 구성되었는지 확인하는 방법을 배웠습니다.