git

git 초반 세팅 및 기초

jjaehhoneo 2025. 9. 11. 17:13

git init 

- 현재 디렉토리를 Git 로컬 저장소로 초기화

- .git 폴더가 생성되며  Git이 이 폴더를 통해 버전 관리 시작. (3인칭 게임에서 스페이스바 같은 기능?)

 

git status 

- 작업 디렉토리와 스테이징 영역의 상태 확인

- 어떤 파일이 변경되었고(add 필요 여부 등), 어떤 파일이 커밋준비가 되었는지 보여준다.

$ git status
On branch main  //현재 작업 중인 브랜치는 main이다
Changes not staged for commit: // 변경은 있으나 add 상태에 올리지 않았다
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   README.md  // 수정된 파일 명 

no changes added to commit (use "git add" and/or "git commit -a") 
// 현재 커밋할 수 있는 변경 사항이 없다. 즉, 수정만 했고 커밋 준비를 안 했음을 보여줌

git add 파일명 

- 특정 파일을 스테이징 영역에 추가, 다음 git commit에 포함될 준비를 한다.

- 전체 파일을 추가하려면 git add . 사용

 

git rm --cached 폴더명/파일명

- 스테이징에 올려놓은 파일 다시 내려놓기

 

git reset

- 위에 내용 모든 파일 한번에 하기

 

git config --global user.name "~~"

git config --global user.email "~~"

-전역으로 사용자 이름/이메일 설정.

-커밋 작성시 누가 했는지 기록에 남으며 이메일은 github 계정 연결 시 필요 

 

git config --global -l or --list

- 현재 전역 설정된 git 환경 변수 확인하기

 

git commit 

- 스테이징 영역에 있는 변경 사항을 로컬 저장소로 커밋

- 기본 텍스트 편집기가 열려 커밋 메시지 입력 가능 :wq로 저장 및 종료 가능

 

git commit -m "메시지"

- 메시지를 인라인으로 작성 가능

 

git commit --amend -m "메시지"

- 직전 커밋 수정 명령어

 

git log 

- 커밋 내역확인 (최신순)

 

git diff 

-두 커밋 간의 차이를 알 수 있는 명령어

 

git remote add origin https://github.com/사용자명/리포지토리

- 로컬 저장소와 원격 저장소(github)를 연결

- origin 이라는 이름으로 해당 URL 등록

 

git branch -M main

- 현재 브랜치 이름을 main으로 변경

 

branch란? 동시에 다양한 작업을 할 수 있게 해주는 기능, 각자 독립적인 저장소에서 자유롭게 코딩 가능

나중에 merge 할 때에도 언제, 누가, 어떻게 변경했는지 알 수 있다. 

 

git push -u origin main 

-로컬의 main 브랜치를 원격 저장소(origin)의 main 브랜치에 push

- -u 옵션은 upstream 설정으로, 이후 git push만 입력해도 자동으로 origin main에 push된다