GitHub와 친해지기

고승우·2022년 9월 18일
0

Auto Backup Project

목록 보기
1/1
post-thumbnail

프로젝트 소스 코드를 Github에 포스트

프로젝트를 Git을 활용해 버전관리와 형상 관리를 하려고 한다.

Git이란?

소스코드 관리를 위한 형상 관리 (버전 관리)를 도와주는 시스템의 도구 중 하나이다. 또한 여러 명의 개발자 하나의 프로젝트를 편리하게 협업하여 개발할 수 있도록 도와준다.

GitHub란?

Git을 무료로 호스팅 해주는 사이트다. 전 세계 개발자들이 자유롭게 참여하여 오픈소스를 공유, 개방한다. 협업에 특화된 만큼 회사에서도 여전히 많은 개발자들이 사용하는 사이트이다. 이번 프로젝트를 기회로 GitHub를 다루는 데에 조금 더 익숙해지려고 한다.

Git의 구조

GitHub에 관해 간단히 정리한 후, GitHub의 주요 명령어를 어떻게 다뤄야 하는지에 대해 정리를 해보려고 한다. GitHub에 대해 정리하기 전에 Git에 구조에 대해 설명을 해야 GitHub의 명령어를 이해할 수 있어 간단하게 Git의 구조에 대해 설명한 후에 명령어에 대해 알아보자. Git에는 크게 3가지의 공간이 존재한다.

  • Local repository는 우리가 흔하게 접하는 우리 컴퓨터 내의 폴더이다.

  • Working Directory는 저장소를 바라보는 현재의 시점으로 우리가 작업하는 폴더라고 인식하면 이해하기 쉽다.

  • Staging Area는 저장소에 commit 전에 준비하는 위치이다. 변경된 작업물을 확정하고 저장하는 작업을 'commit'이라고 한다.

  • Remote(Repository)는 최종적으로 우리가 변경사항을 저장할 곳이다. 우리가 작업하는 컴퓨터 내부의 폴더를 벗어나 GitHub에 존재하는 폴더(Repository)로 생각하면 이해하기 쉽다.

Git 명령어

Git 또한 GUI(graphical user interface)를 활용하여 편리하게 이용할 수 있지만, 아직 학생인 만큼 CLI(command-line interface)을 활용하는 연습이 필요해 꼭 필요한 Git의 명령어에 대해 간단하게 정리하려고 한다.

  • git init : 새로운 로컬 Git 저장소를 생성한다. 명령어를 실행 하면 .git 폴더가 생성되는 것을 확인할 수 있다.
  • git status : 현재 작업 중인 파일의 상태를 확인한다. 파일이 변경(modified) 되었거나, 존재하지 않던 파일(untracked)이 생겼을 경우 알 수 있다.
  • git add : 현재 상태를 추적하도록 하는 명령어다. 즉 상태를 추적하도록 명령하지 않는다면, Remote Repository(GitHub)에 파일이 올라가지 않는다. 이러한 과정을 위해 Staging area가 존재한다.
  • git commit : 현재 상태를 저장한다. Remote Repository(GitHub)에 파일을 올리기 전에 라벨링을 하는 과정이라고 생각하면 편하다.
  • git push : commit한 내용을 Remote Repository(GitHub)에 저장한다.
  • git pull : Remote Repository에 있는 commit을 Local Repository(작업 중인 컴퓨터)로 가져오는 과정이다. push의 반대로 생각할 수 있다.
  • git clone [원격 저장소 주소 -> URL] : Remote Repository에 있던 내용을 모두 Local Repository로 복제하는 명령어다.
  • git config --global user.email [GitHub 유저 email] : 해당 시스템에서 사용자 이름과 이메일 주소를 설정하여 commit할 때마다 이 정보를 사용한다.

마치며...

Git에는 다양한 명령어와 기능이 있고 각 명령어와 기능에는 다양한 옵션이 존재한다. 아직 모든 것을 다뤄보진 못했지만, 차차 사용하는 명령어와 옵션의 폭을 늘려보려고 한다.

profile
٩( ᐛ )و 

0개의 댓글