본문 바로가기
[Git]

GitHub 원격 레파지토리를 만드는 방법, 로컬 레파지토리와 연결하기

by 황원용 2023. 7. 27.
728x90

💡 원격 레파지토리를 만들고 파일을 업로드하기

  • Github 오른쪽 상단에 로그인 계정 아이콘을 클릭합니다.
  • Your repositories를 클릭합니다.

 

  • 상단에 위치한 초록색 박스 New를 클릭합니다.

 

  • 각 설정을 마치고 레파지토리를 생성합니다.

 

  • creating a new file이나 uploading an existing file을 클릭하여 아예 새로운 파일을 만들거나, 로컬의 파일을 업로드할 수 있습니다.

 

 

로컬 레파지토리와 원격 레파지토리 연동하기

💡 로컬 레파지토리의 파일을 깃의 관리 하에 두기

 

  • git status라는 명령어로 해당 폴더의 git 상태를 확인할 수 있습니다.
  • git status 명령어는 .git이라는 깃 관리 메타정보 디렉터리가 있는 폴더에서만 작동합니다.
  • 지난 시간에 만든 따끈따끈한 로컬 깃 디렉터리라 어떠한 커밋 이력도 없는 것을 확인하실 수 있습니다.

 

  • 만약 깃의 관리를 받지 않는 폴더에서 git status 명령어를 입력하면 위와 같이 깃 레파지토리가 아니라고 나옵니다.
  • 다시 본론으로 돌아와서 로컬 레파지토리를 원격 레파지토리와 연결하고 커밋하고 푸쉬해보겠습니다.

 

  • git의 관리를 받게되면 각 파일은 특정 상태에 있게 됩니다.
    • 이 부분은 다음 시간에 다루겠습니다.
    • 이번 시간에는 원격 레파지토리와 연결하는 부분에만 집중하겠습니다.
  • git add .를 입력하면 git이 현재 경로의 모든 변경된 파일이나 새로 추가된 파일을 임시 저장하여 대기시킵니다.
  • git commit -m “커밋 메시지”를 입력하게 되면 로컬 레파지토리에 임시 대기 중인 파일들이 트래킹되어 깃의 관리 하에 들어갑니다.
  • 깃의 로컬 레파지토리에 변경 사항을 기록하여 관리할 것이냐에 대해 설정하는 내용으로 이해하시면 됩니다.
    • 앞서 언급했듯이 git의 상태 영역에 대해서는 다음 시간에 다루게 됩니다.

 

 

💡 로컬 레파지토리와 원격 레파지토리를 연결시키기

  • 지난 시간에 만든 test라는 이름을 가진 원격 레파지토리입니다.
  • 이 레파지토리의 SSH 주소를 복사합니다.
  • 사진의 아래에 보면 git remote add origin <주소> 명령어가 있는 것을 확인할 수 있습니다.
  • 로컬 레파지토리와 test라는 원격 레파지토리를 연결하기 위해 사용하는 명령어입니다.
  • git remote add <원격 레파지토리의 별명> <주소>인데 별명은 보통 origin을 많이 사용합니다.
    • 좀 더 자세히 얘기하면 <주소>를 매번 입력하기 귀찮으니, <주소> 대신 <원격 레파지토리의 별명>으로 사용하겠다는 의미입니다.
     

  • 원격 레파지토리와 지난 시간에 만든 로컬 레파지토리를 연결하기 위해 로컬 레파지토리의 폴더 안에서 작업합니다.
  • 터미널 or git bash에 git remote add origin <주소>를 입력합니다.
  • 연결이 되었다면 아무 반응이 없을 겁니다.

 

 

💡 원격 레파지토리에 PUSH로 파일 업로드해보기

  • 위의 과정을 통해 로컬 레파지토리와 원격 레파지토리는 연결되어있습니다.
  • 테스트를 위해 로컬 레파지토리에 html 파일을 하나 넣고 push를 날렸습니다.
  • 명령어는 git push <연결된 리모트 레파지토리의 별명> <branch 명>입니다.
  • 연결된 리모트 레파지토리의 별명은 위에서 정한 origin이며, branch 명은 main입니다.
  • push가 성공하면 위와 같은 로그가 남습니다.

 

  • 정상적으로 push가 되었기 때문에 파일이 업로드가 되었고 연결까지 확인했습니다.

 

 

이번 시간에는 로컬 레파지토리와 원격레파지토리의 연동 과정을 짧게 보여드렸습니다.

다음 시간에는 깃 파일의 상태에 대해 알아보면서 보다 자세한 연동 과정을 보여드리겠습니다.

728x90