git 명령어 모음

kdkdhoho·2022년 1월 22일
0

사실 여태 git을 중간중간 사용해왔지만 학기 중엔 전혀 사용하지 않다싶이 했고
연구실에 있을 때 방학에 간단한 프로젝트나 머신러닝 학습같은 것을 하면서 사용했었다.
그리고 지도교수님의 지시? 권유?하에 연구실 내 git 담당이 되었다. 당시 연구실원 중 git을 IDE와 연동하여 커밋하거나 git을 제대로 쓰는 사람이 없었기에 내가 목화씨를 가져온 문익점처럼 연구실에 git을 널리 퍼트리기를 바라시는 마음으로 내가 담당이 되어서 잠깐 git에 대해 공부한 것이 다였다.

하지만 이제는 본격적으로 전공과목의 CS보단 내가 나아가고자 하는 분야의 개발 능력을 기루는 것이 우선이므로 git을 사용하는 것이 필수불가결이 되었다.

그에따라 Udemy에 있는 Git으로 만드는 전설의 레시피 강의를 보며 공부한 것을 정리하고자 한다.

그리고 개인적으로 모든 영상의 학습이 마친 뒤 하루빨리 git에 TIL이나 기타 소스코드들을 올리고 싶다!


git이란?

git은 한마디로 표현하면 버전을 편리하게 관리할 수 있게 도와주는 도구이다.

또한 모든 파일의 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내오는 것을 가능하게 해준다.

일반적으로 프로젝트를 할 때 한번에 전부 완성하는 것이 아니라, 거듭된 수정에 의해 완성되는데 중간에 저장을 하거나 내역을 기록하지 않는다면 시간이 굉장히 많이 소요될 것이다.

git의 장점

  1. 최종 과정까지의 지난 과정과 히스토리를 볼 수 있다.
  2. 이전 버전으로 돌아갈 수 있다.
  3. 여러 개발자가 협업할 수 있는 환경을 만들어준다.

현대의 소프트웨어는 개발자 한 명이 만드는 것이 아니라 여러 사람이 함께 만드기 때문에
오늘날 개발자가 이 git을 사용할 줄 모른다는 것은 말이 안되는 것이다.

그럼 이제 git 명령어들을 알아보자.


git 명령어

모든 명령어는 터미널에 입력해야 합니다.

git

git이 설치되어 있는 경우, git의 명령어들이 나열된다.

git init

git을 시작하고 싶은 폴더에서 git init을 입력하면, 숨겨진 폴더로 .git폴더가 생성된다. 이 폴더에서 UI로 조작하기보단 명령어로 조작한다고 보면 된다.

git add (파일명)

.git이 생성된 폴더에서 git add (파일명) 을 입력하면, 폴더 내 파일명에 해당하는 파일이 git에 포함된다.
이는 아직 commit 되기 전

git commit -m "커밋 메시지"

git에 포함된 변경된 파일들이 commit된다. 이때, -m 명령어를 통해 커밋메시지를 남길 수 있다.

git log, git log --oneline

두 명령어 모두 git을 사용한 log가 출력된다.
하지만 git log --oneline이 좀 더 깔끔하게 출력된다.

git remote add origin https://~~.git

git(로컬저장소)에 origin이라는 이름으로 원격저장소 https://~~.git를 추가한다.

보통 원격저장소 이름을 origin으로 한다.

git remote rm origin

등록된 원격저장소를 삭제한다.

git branch -M main

메인 줄기를 main이라는 이름으로 설정한다.

Master라고 사용됐었는데 이는 Master-Slave 관계를 연상시켜 요즘은 main을 주로 사용한다.

git push -u origin main

git(로컬저장소)에 있는 origin이라는 이름의 원격저장소의 main 브런치에 push한다.

-u는 로컬저장소를 원격저장소에 연결한다는 의미이고, 초기 한 번만 명령하면 된다.

git remote -v

로컬저장소에 저장된 원격저장소를 확인할 수 있다.

git pull

원격저장소에 추가 및 수정된 내용을 로컬저장소로 불러온다.

git branch (branch명)

현재 줄기에서 branch를 생성한다.

git switch (branch명)

현재 줄기를 branch로 변경한다.

git merge (branch명)

현재 줄기를 기준으로 branch명을 합친다.

꼭 합치기 전 기준이 되는 줄기로 이동 후 merge를 실행해야 한다.

git push --set-upstream origin (branch명)

로컬저장소에서 원격저장소로 새로운 branch를 push하기 위한 명령어이다.

git commit --amend

직전 커밋의 커밋메시지만을 수정할 수 있다.

그 다음 I를 눌러 insert모드로 바꾸어 수정을 하고,
ESC + : + w(write)q(quite)를 누르면 덮어쓰기가 완료된다.


기타 유의사항

1. main 브런치에는 코드가 충분히 검증되고 기능에 문제가 없는 내용만 포함이 되어야 한다.

2. branch별로 원하는 작업을 진행하다가 기능이 이상이 없으면 main으로 합친다.

참고로 현업에서 main brach에서 기능을 개발하거나 버그를 수정하지는 않고 brach를 만들어 리팩토링, 기능추가, 버그수정을 진행 후 main brach로 합치는 것이 일반적이다.

profile
newBlog == https://kdkdhoho.github.io

0개의 댓글