Git 관련 이슈 및 오류

준그 임돠·2021년 8월 9일
0

.eslintcache .gitignore 이슈

React 작업을 하면서 Git에 push 할때마다 오류가 뜸

  • .eslintcache : CRA 를 만들면 자동으로 생기는 CRA번들
  • node_modules/.cache/.eslintcache 에서 Git이 업데이트 될 때 최신화를 해주는데 같이 최신화를 할 것이냐고 물어보는것이다 캐시기록은 필요가 없으므로 gitignore를 이용해서 속도를 향상시키자
//gitignore 파일에 .eslintcache를 넣어주자
.eslintcache

하지만 이 방법으로도 git에 업데이트가 된다면
gitignore 에 .eslintcache 를 다시 넣어주고

//캐쉬를 삭제 해주고
git rm -r --cached .

//다시 푸시를 해봅니다  
git add -> commit -> push  

Git commit, add ,pull 취소하기

reset 명령어를 통해 작업을 취소 시킬 수 있다.

reset 명령어의 옵션

  • soft : index 보존(add한 상태, staged 상태), 워킹 디렉터리의 파일 보존. 즉 모두 보존.
  • mixed : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉터리의 파일 보존 (기본 옵션)
  • hard : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉터리의 파일 삭제. 즉 모두 취소.
  1. 작업 취소
git reset --soft HEAD^

--soft 옵션을 사용하였으므로, 수정한 내역은 그대로 두고 head는 한단계 위로 조정을 한다는 의미입니다. commit을 취소하는 것이죠
--hard 옵션을 사용하게 되면 지금까지 작업하던것들이 다 날아가므로, 조심합시다

  1. commit 취소
git reset --hard @^

hard를 이용하여 HEAD로 돌리는 명령어 입니다.
@는 1.8.4부터 도입된 HEAD의 동의어라고 합니다. 같은걸로는 @^, @~1, @~ 가 동일합니다.

  1. pull, merge 취소
git reset --hard ORIG_HEAD
git reset --merge ORIG_HEAD

ORIG_HEAD라고 하는것은 이전에 작업한 곳의 HEAD입니다.

즉. pull 이나 merge를 하는 경우에 ORIG_HEAD를 남기게 되는데, pull을 잘못 받거나 merge를 잘못하게 되면 이것을 이용합니다.

  1. add의 취소
git reset HEAD

즉 default인 mixed를 이용하여 HEAD로 돌아가게 하는 방법입니다.

위에 넣은것처럼 @^도 동일합니다. @~1도 되겠죠.

많은 양은 아니지만 조금씩 사용하면 좋은 부분들도 있으니 잘 작업해 봅시다.

단. 작업할때는 항상 branch를 이용하는것을 추천합니다.
만약 push를 하였을 경우에 commit을 조금이라도 지저분하지 않게 하기 위해서는 브랜치에서 해야지 force push를 할 수 있기 때문입니다.

profile
기록 또 기록

0개의 댓글