HEAD ^xn : n번째 만큼 commit을 되돌린다.
git reset HEAD^ (mixed) : commit된 변경사항들을 unstage로 보냄
git reset --hard HEAD^ : commit된 변경사항들을 완전히 이전으로 원복!
git reset --soft HEAD^ : commit된 변경사항들을 stage로 보내서 unstage 파일들과 분리시킴. 보통 잘 안쓰고 --hard, mixed를 사용
git push origin main --force 를 보통 사용
git pull origin main 시 conflict를 해결해서 사용하기 귀찮다면! 걍 지금의 코드로 덮어쓰자!(일반적으로 이렇게 사용함)
■ 브랜치 삭제
git branch -d (브랜치명)
■ 커밋 수정
▷ 커밋 수정(amend)은 가장 마지막 커밋을 수정하는 것
git commit --amend -m "(메시지)"
git commit --amend --no-edit
--no-edit ▷ 커밋 메세지는 수정하지 않는다
■ 커밋할 때 파일들의 상태보기
git status
▷ stage 영역에 있지 않은 파일은 빨간색으로 표시
▷ stage 영역에 있는 파일은 초록색으로 표시
■ .gitignore파일에 git에 추가하고 싶지 않은 파일이나 폴더 입력
폴더를 추가하는 방법 ▷ /(폴더명)
■ stage 영역에서 제거
git rm -r (제거할 것) --cached
-r ▷ 폴더 제거시 사용
브랜치 삭제 후, git push origin --delete (브랜치명)
■ 파일생성
touch .gitignore
■ 원격저장소 목록
git remote -v
■ 원격저장소 추가
git remote add (이름) (url)
■ 원격저장소 제거
git remote remove (이름)
※ 더 간단한 명령어
git remote rm (이름)
오픈소스 프로젝트를 fork
fork한 내 코드를 clone
작업완료 후 create pull request 하여 가져가도록 요청
보통 이런식으로 프로젝트를 진행