Git과 Github는 프로젝트를 진행할 때 정말 많이 사용하는 협업툴이기 때문에 필수적으로 알고 있어야 한다!
나도 처음 사용할때 정말 많이 헤맸고 아직도 가끔은 어렵게 느껴지기 때문에.. 글을 쓰면서 다시 정리해볼 예정이다.
1. Git? Github?
이름이 비슷하지만 둘의 역할은 아주 다르다.
간단히 말해 Git은 '버전관리도구'이고 Github는 '깃의 원격 저장소'이다.
• Git
하나의 밈이긴 하지만 작업을 하다보면 위와 같은 상황이 꽤나 자주 발생한다.
Git은 폴더의 상태(또는 변경 내역)을 쉽게 기록할 수 있기 때문에 이러한 수고로움을 덜어준다.
또한 단순히 기록만 할 수 있는게 아니라 이전 상태로 돌아갈 수도 있고, 심지어 평행우주(Branch)를 만들 수도 있다.
• Github
깃허브는 쉽게 말해 개발자들의 구글 드라이브와 같은 개념이다.
깃허브를 이용해 내 깃을 백업하거나, 다른 사람의 깃을 내 컴퓨터에 내려받아 작업하거나, 여러 사람들과 하나의 깃을 가지고 작업하거나 하는 일이 가능하다.
2. 깃 사용법
깃을 이해하기 위해서는 우선 Local과 Remote의 개념을 알아야한다.
Local = 내 컴퓨터
Remote = 깃허브 사이트의 서버
깃의 구조는 아래와 같다.
각 단계를 좀 더 자세히 알아보자.
• Workplace
내가 현재 작업하고 있는 공간이다.
.git 폴더가 숨김 파일로 존재하며, 프로젝트의 모든 버전 관리 정보를 저장하는 역할을 한다.
이 폴더를 통해 GitHub가 특정 파일의 변경 사항을 추적할 수 있다.
git init // 명령어 입력 후 .git 폴더가 보이면 성공
• Staging
깃허브의 Local Repository에 올라가기 전의 준비 상태이다.
git add . // 현재 디렉토리와 그 하위 디렉토리 내의 모든 변경된 파일, 새로운 파일, 삭제된 파일을 Git의 스테이징 영역에 추가
• Local Repository
버전 관리를 위해 데이터를 완전히 저장하는 단계이다.
git commit -m "커밋 메시지" // 변경 사항을 커밋하고 설명 메시지 작성
• Remote Repository
지금까지는 내 로컬 컴퓨터에만 저장된 것이기 때문에 외부 서버 Git의 Repository에 저장하는 단계이다.
git push origin main // origin이라는 평행세계의 main이라는 브렌치로 업로드
3. 자주 사용하는 Git 명령어
자주 쓰는 명령어에 대해 알아보자.
• git log
Git 저장소의 커밋 로그를 조회하는 명령어이다.
저장소의 커밋 히스토리를 볼 수 있다.
• git status
현재 작업 디렉토리의 상태를 조회하는데 사용된다.
• git clone
원격 Git 저장소(깃허브 레포지토리)를 복제하여 로컬 환경에 새로운 Git 저장소를 만드는 명령어이다.
이미 진행 중인 프로젝트를 쉽게 가져올 수 있기 때문에 위에서 소개한 init보다 clone 명령어를 더 많이 사용하는 편이다.
사실 소개한 명령어 이외에도 훨씬 더 많지만, 필요할때 구글링해보며 사용하는 것을 추천한다!
https://wecandev.tistory.com/152#google_vignette
4. 실습
백문이 불여일견! 깃은 사용해볼수록 익숙해진다.
1) 우선 깃허브에서 새로운 레포지토리를 생성하고 아무 파일이나 넣어두자.
2) 내 컴퓨터(로컬)에 폴더를 만들고 clone을 진행한다.
아래와 같이 .git 폴더가 생긴 것을 확인할 수 있을 것이다.
3) 파일의 코드를 조금 변경한 후 add, commit, push를 순서대로 진행한다.
4) 짠! 이제 깃허브 레포지토리에서 커밋된 내역을 확인할 수 있다.
'공부기록 > Git' 카테고리의 다른 글
[Git] Git Branch 전략 (0) | 2024.08.27 |
---|