우리는 컴퓨터로 많은 일을 한다. 많은 사람들이 주로 하는 문서 작업이든 개발자들이 하는 코드 작업이든 우리는 컴퓨터에 파일을 만들고 파일을 관리한다. 파일 작업이 한번에 끝나면 좋으련만 한번에 끝나는 일을 드물다. 여러번의 수정을 거치고 나서야 최종 파일이 작성된다. 그런데 수정을 하다가 돌아가고 싶은 지점으로 못 돌아가는 경험이 다들 있다. 그렇다고 매번 수정할 때마다 파일을 복사해서 관리하면 관리해야할 자원이 넘쳐나고 어떤 부분이 바뀌었는지 비교하는 데 시간이 많이 걸린다. 이러한 두통을 해결해 줄 한 가지가 있다. 바로 깃(git)이다.
깃(Git)은 우리가 파일을 작성할 때 파일 관리를 쉽게 해주는 프로그램이다. 깃이라는 프로그램을 받아 깃에서 제공하는 명령어를 익히면 한 파일에서 수정을 하고 문제가 생겼을 때 되돌릴 수 있다. 매번 만약을 대비하여 파일을 복사하여 저장 및 관리할 필요가 없다. 즉 파일을 복사해서 생기는 불필요한 자원 낭비를 막을 수 있다. 또한 어느 파일로 돌아가야 할 지 찾아야 할 때 여태까지 저장해 놓은 모든 을 읽고 찾을 필요가 없다. 시간을 아낄 수 있다.
그리고 다른 사람과 한 파일로 같이 일하는 경우가 있다. 이런 경우 작업을 하다가 합쳐야 할 때 충돌할 가능성이 있다. 깃으로 그 원본 파일을 관리하면 충돌을 해결하는데 편리하다. 우선 구글에서 깃을 검색해서 다운을 받고 설치한다. 깃에는 많은 명령어가 있지만 자주 사용하는 명령어는 다음과 같다.
- git init : 깃을 사용할 때 제일 처음 사용하는 명령어이다. 깃에게 어떤 폴더를 관리할 지 알려주는 명령어이다.
- git add / git add . : 폴더 안에 있는 파일 가운데 깃이 관리해야 할 파일을 추가하는 명령어이다. <git add .> 명령어는 모든 파일을 관리 파일로 추가하라는 명령어이다. 모든 파일을 추가하기 전에 깃이 관리하지 않기를 바라는 파일은 gitignore 파일을 만들어 여기에 그 파일 이름을 명시하면 된다. 다만 한번 커밋한 파일은 여기에 포함될 수 없으니 커밋 내용에서 삭제하고 넣어야 한다.
- git commit: 관리할 파일을 추가하고 나서 관리할 파일들이 어떤 상태인지 깃한테 알려주는 명령어이다. 어떠한 이유로 어떤 부분을 수정했다라는 상태 메모를 남길 수 있다. 이런 경우에는 git commit -m “상태 메모”를 사용하면 된다. 작성해야 할 메모가 길 때 그냥 git commit을 한다. 그럼 별로 익숙하지 않은 리눅스 환경인 vm이 뜬다. 여기에 메모를 작성한 후 esc 버튼을 누르고 :wq를 누르고 나오면 된다. 그러면 긴 상태 메모를 남길 수 있다.
- git log: 그동안 commit한 내용을 확인하고 싶을 때 사용하는 명령어이다.
- git diff: git add 명령어를 사용하고 나서 변경된 부분을 확인 하고 싶을 때 사용하는 명령어이다.
- git remote add origin <주소>: 그동안 작성한 코드 파일을 내 전용 컴퓨터에만 저장하면 이 코드를 다 잃어버릴 경우 큰 손해가 된다. 즉 로컬 환경에서만 파일을 관리하면 로컬 환경에 문제가 생겼을 때 파일에 접근할 수 없거나 완전이 잃어버릴 경우가 생길 수 있다. 그래서 대부분은 원격 서버에 파일을 등록하고 관리하는 경우가 많다. 깃을 사용해서 파일을 관리할 수 있는 원격 서버를 제공하는 플랫폼은 여러 개가 있다. 그 가운데 대표적인 곳이 깃허브이다. 이 명령어는 깃이 관리할 폴더와 파일 어떤 플랫폼의 서버에 등록할 지 알려주는 명령어이다.
- git push origin main: 모든 파일을 커밋까지 다 한 후 원격 서버 리파지토리(공용 코드 공간)에 등록하는 명령어이다.
이 밖에도 git에는 많은 명령어가 있고 위에 기술한 명령어에서도 다양한 명령어를 추가해서 같이 사용할 수도 있다. 우선은 대표적인 명령어를 익히고 다른 명령어가 필요하거나 오류가 생길 때 구글이나 ChatGPT에서 찾아보면서 배우면 시간을 아낄 수 있을 것이다.
Leave a comment