모르지 않다는 것은 아는것과 다르다.

Git

github 정리

채마스 2022. 2. 27. 00:49

git config --global

  • git config 뒤에 global이 붙는 이유는 "앞으로 이 컴퓨터에서 깃으로 관리하는 모든 프로젝트는 global하게 즉 모두다 이 유저네임으로 할것이다." 라는 뜻이다.


git config --global --list

  • 전역 설정 정보 조회


git init

  • 비유 : 사진찍을 사진사를 고용
  • 프로젝트당 초기에 1번만 설정
  • .git 파일이 생성된다.
  • 참고 : clone을 받으면 --> .git파일까지 생성된다.


git add .

  • 비유 : 찍은 사진찍을 사람들을 모으는작업
  • 작업마다 모아줘야댐
  • . << 파일 전체를 의미


git commit

  • 비유 : 사진을 찍는과정
  • 작업마다 찍어줘야댐


git log

  • 커밋 기록들이 저장됨
  • 여기 저장된 save point 를 이용해서 과거 상태로 돌릴 수 있다.


git reset --hard [save point]

  • 위의 log 기록에서 save point 를 복사해서 붙여주면 과거 상태로 돌아 갈 수 있음


git reset --hard

  • 마지막으로 commit한 시점으로 돌아감


이미 과거 commit으로 돌아가버린 상태에서 다시 앞으로 오고싶으면?

  • github 즉, 서버에 올라가 있는 commit 이력을 확인한 후 --> save point를 복사해서
  • git reset --hard [save point] 명령어 실해해 주면 된다.


.gitignore

  • 반영하고 싶지 않은 파일들을 설정할 수 있다.


git branch

  • 지역 branch 목록을 확인한다.


git branch -r

  • 원격 branch 목록을 확인한다.


git branch -a

  • 지역과 원격을 포함한 모든 브랜치 목록 보기


git branch [새로운 브랜치] [브랜치를 생성할 위치]

  • 다른 시작 지점에서 브랜치 생성


git branch -f [기존 브랜치] [브랜치를 생성할 위치]



git branch -v

  • branch 상세 정보를 확인한다.


git branch [브랜치 이름]

  • 새로운 branch 생성


git branch -D [브랜치 이름]

  • branch 삭제


git checkout -b [브랜치 이름]

  • 새로운 브랜치생성후 그 브랜치로 이동
  • 현재 있는 브랜치에서 브랜치를 생성하는 것임


git remote rm [원격 저장소]

  • 원격 저장소 제거하고 관련된 브랜치도 제거


git remote prume [원격 저장소]

  • 원격 저장소에서 쓸모가 없어진 원격 브랜치 제거


git log --graph

  • 깃 로그를 그래프로 보기


git merge [브랜치명]

  • 브랜치의 부모로 이동후 해당 명령어 실행하면 [브랜치명]에 해당하는 브랜치가 부모로 merge됨
  • rebase와 차이점은 3-way-merge로 인해서 쓸대없는 commit이력이 남음 (rebase가 더 좋음)


git rebase [p1] [p2]

  • p1 과 p2 브랜치의 공통 조상 커밋부터 p2 브랜치까지의 모든 커밋의 base를 p1 브랜치의 위치로 바꾸어라”
  • p1은 그대로있고 p2가 p1뒤로 붙어서 2갈래가 1갈래로 이쁘게 바뀜