2.[Git] 깃 기본 명령어 알아보기

깃/깃허브 소스 관리 기본 흐름

1. git init
===지역 저장소===
2. 작업 디렉토리
3. git add
스테이징 영역
4.git commit
지역 저장소
git push▽ / git pull△
===원격 저장소===

흐름 지역 저장소 -> 깃허브(원격 저장소)

git init
git add
git commit
git push

깃허브(원격 저장소) -> 지역 저장소

git clone - 전체 저장소 내려받기
git pull - 일부 변경 사항만 내려방기

.git

  • .git - 폴더명 앞에 점이 있으면 숨겨진 폴더라는 뜻
  • ls -a 폴더 내부가 보고 싶다면 숨김 폴더 파일 목록을 보여준다
  • 지역 저장소로 관리하는 정보를 담는다
    cd .git
    ls -l
    
  • .git 폴더 내의 파일 및 폴더 목록을 확인

image.png


git init 취소

rm -rf .git

git config --global 모든 프로젝트에 사용자 정보를 등록하려면

git config --global user.name "사용자 이름"
git config --global user.email "사용자 주소"

깃 설정 파일

cat .git/config

image.png

원격 저장소 주소 복사

git remote add origin {복사한 원격 저장소 주소}

origin이라는 식별자로 원격 저장소 주소 등록


  • .gitignore 파일 생성

git status

현재 프로젝트의 파일 상태 확인

깃 작업 트리

  • 추적하는 파일(Tracked)과 추적하지 않는 파일(Untracked)을 구분
  • 추적하는 파일의 상태를 구분
  • 작업 디렉토리, 스테이징 영역, 지역 저장소
  • git status로 추적상태를 알 수 있다
  • Untracked Files
  • Changes to be committed 스테이징 된 후
  • unmodified
  • 수정시: modified (git add 다시 하면 unmodified로 돌아감)

git log

현재 작업하는 브랜치의 커밋 내역을 보여준다

HEAD: 현재 작업하는 브랜치의 최종 커밋을 가리킨다

checksum: 커밋을 식별하는 고유한 데이터 단위

  • git log로 확인 가능
  • git log -p로 변경 내용 확인 가능
  • git log 숫자로 원하는 갯수만큼의 커밋 보여주기
  • git log -p -1
  • git log --stat (insertion deletion을 보여줌)
  • git log --pretty=옵션
  • git log --pretty=oneline 한줄로 보여줌
  • git log --pretty=oneline --graph 그래프도 보여줌
  • git log --pretty=format: "%h %an %s"

커밋 메세지 수정 방법 #1

git commit --amend
수정
esc
:wq
enter
git log

커밋 메세지 수정 방법 #2

git commit --amend -m "수정 메세지"

커밋 파일 추가

git commit --amend --no-edit

기존 커밋에 새 파일을 추가하거나 이미 추가된 파일의 최신 버전을 반영해야하는 경우

에디터를 띄우지 않고 커밋 메세지를 수정

.gitignore 수정
git status
git add .gitignore
**git commit --amend --no-edit**

커밋 저자 수정

회사 깃 과 개인 깃을 한 컴에서 같이 사용할 때

git commit --amend --author "username <email>"

푸쉬하기

git push {저장소} {브랜치}
git push origin main

새로운 서버로 푸쉬하기

원격저장소가 여러개일 경우

  • 깃허브에서 create repository로 새 원격 저장소를 하나 만듦
git remote add origin2 {2번째 원격 저장소 주소}
cat .git/config
git push origin2 main

image.png


원격 저장소 복제하기

처음 원격 저장소를 생성한 사람이 아닐 때 하나의 프로젝트를 대상으로 여러 개발자가 협업하는 경우

git clone "원격 저장소 주소" "새로운 저장소 이름"

image.png

Did you find this article valuable?

Support Fullstack Developer at Your Service by becoming a sponsor. Any amount is appreciated!