본문 바로가기

others

TIL no.13 - Git / Github 이란 무언인가?

html, css, JavaScript 의 기초를 배우면서 무언가를 만들었을 때, Github 에 저장한다는 것은 당연히 알고 있었지만

단순히, Github 홈페이지에서 new repository를 생성하여 업로드 하거나 Github Desktop app을 통하여 업로드했었다.

Git 명령어를 이용하여 terminal 에서 다룰 수 있는 것이 중요하다는 것을 어느 정도 알고 있었기 때문에 배워야 겠다고 생각은 했었다.  

wecode의 4주차 스터디로 Git / Github 을 공부해야 했기에 알아가기 시작했지 그것이 아니었다면 또 미뤄두었을 것 같았다 .

알고 익숙해지면 편하다는 Git / Github 그리고 그 용어에 대해서 이해하고 간단하게 알고 있어야 할 명령어들을 정리해보았다.

 

Git 이란 무엇인가 ?

: 버전 관리를 위한 공개 소프트웨어입니다.

-버전관리를 하는 이유? 언제든 이전 코드로 돌아갈 수 있고 이력을 남기기 위해서.

 

같은 파일에 대한 각기 다른 버전을 보관할 수 있기 때문에 프로젝트를 하는데 유용하게 사용할 수 있습니다.

각기 다른 버전을 branch를 통해 가지 내기로 생성하며 나중에 본 파일에 Merge 하는 방식으로 편리하게 프로젝트를 진행할 수 있습니다. 

 

Github 이란 무엇인가 ?

: git이 저장돼서 원격전송된 파일들이 저장되는 공간을 제공하는 웹 호스팅 서비스 입니다.

오픈 소스를 이용해 다른 개발자의 소스를 보고 더 나은 방안을 제시하거나 좋은 소스를 채택하여 프로젝트에 사용될 수 있으며,

기업에 자신의 소스가 사용되었을 때, 그것이 그 개발자의 자산에 플러스가 되기도 한다.

다른 개발자들과 협업을 진행할 때에 소스를 동시에 공유하며 어떤 개발자가 어느 시점에 수정한 코드인지 쉽게 알 수 있으며 협업에 아주 용이하게 이용됩니다.


--- Git 명령어를 이용해 Github에 Repository 생성하여 저장해보겠습니다  !

 

$ pwd : 현재 위치한 directory의 경로를 표시한다.

- 현재 위치를 파악해서 원하는 위치에 새로운 저장소를 생성할 수 있다.

 

$ cd [폴더 디렉토리] : 하위 폴더로 이동 가능합니다 !

 

$ cd .. : 상위폴더로 이동 가능합니다 !

- 원하는 위치로 이동하기 위해 위의 두 명령어로 상위 폴더나 하위 폴더로 이동할 수 있다.

 

 

$ git init : 원하는 폴더에서 git을 시작하면 그곳에 새로운 로컬 저장소 .git이라는 공간이 생긴다.

 

 

$ git status :  파일의 상태에 대해서 알려줍니다.

git에 추가되지 않은 파일이 있을 때 위와 같이 빨간 색으로  파일이 뜬다.

 

 

$ git add [file] : 백업에 포함할 파일들을 추가한다.

git add를 통해 파일을 추가하면 초록색으로 수정된 파일이 뜹니다.

 

 

$ git add . : 모든 변경 사항을 추가한다.

 

 

$ git clone [url] : 저장소를 가져온다.

 

 

$ git commit -m ["작업의 내용 - comment"] : 이 시점의 작업에 대한 간단한 설명을 기록한다. 작업하고 있는 폴더의 전체 내용이 그 시점의 순간에 저장된다. 프로젝트의 단계마다 commit하여 중요한 포인트 지점들을 기록해 나중에 그 부분으로 돌아가 수정하는데 용이하다.

 

 

만약에 원하는 지점으로 되돌려야 할 때, 

$ git log : 이제까지의 기록된 지점들을 확인한다.

 

 

$ git reset --hard [작업지점 이름] : 이 지점으로 복원된다.

 

 

프로젝트를 하면서 진행상황이 앞으로만 나아가는 것이 아니라, 여러 가지의 기능을 다르게 구현해보고 싶을 때,

$ git branch ["브랜치명"] : 브랜치 생성하기. 가지 내기를 통해 분기가 가능합니다. 주가 되는 작업은 main branch에서 작업하고 시도해  볼 부분은 다른 branch에서 작업하다가 나중에 main branch로 합칠 수가 있다.

 

 

나의 github에 들어가서 레파지토리를 하나 생성해서

그 아래 있는 

git remote add origin https://github.com/choihaneul9545/test-repo.git

 

를 터미널에 입력하고, 확인하기 위해

git remote -v

로 fetch 가 잘 되었는지 확인하고

 

 git push -u origin main 이 부분을 입력하여

github에 push해준다.

가져오려면 pull 을 사용한다.

(처음에만 -u를 넣어주고 그 다음부터는 

git push origin main 만 입력하면 됩니다.)

 

 

( master가 main 으로 변경되었습니다.) 

 

 


 

 

$ mkdir [디렉토리명] : directory 생성 - make directory의 의미로 mkdir 다음에 만들고자 하는 directory의 이름을 입력하면 된다.

 

 

$ ls -la : 현재 directory 안에 있는 파일들의 목록들을 보여준다.

 

 

$ touch + [파일명] : 지정한 파일명의 파일을 만든다.

$ touch app.js

$ css/style.css

 

$ git fetch <remote> : 원격저장소의 변경사항을 가져온다.

 

 

$ git push : 원격 저장소에 변경사항을 발행한다.