.gitignore 파일 생성

캡틴 노드랭크·2021년 6월 25일
0

git

목록 보기
3/4

.gitignore는 프로젝트의 최상위 위치에 존재해야한다.

gitignore를 작성하는 이유

프로젝트를 저장소에 commit 하려고 할때 민감한 정보나 굳이 올라갈 필요가 없는 용량만 큰 파일들, 로그파일 등 귀찮은 문제가 발생할 여지를 사전에 방지해준다.

대표적으로 무시해야할 파일

  • 로그(Log) 파일
  • API 키/ 비밀, 자격증명 같은 민감한 정보
  • .DS_Store같은 MacOS에서 쓸모없는 시 파일
  • dist 폴더와 같은 생성 파일
  • 패키지 관리자에서 다운로드 할 수 있는 모듈(종속성)
  • 또 다른 이유...

.gitignore 생성

A. gitignore 파일 만들기

프로젝트 최상위 루트에서 .gitingnore 파일을 생성한다.

B. 웹페이지에서 생성하기

gitignore.io에서 생성

.gitignore 작성 규칙

  • '#'으로 시작하는 라인은 무시한다.
  • 표준 Glob 패턴을 사용한다.
  • 슬래시(/)로 시작하면 하위 디렉터리에 적용되지 않는다.
  • 디렉토리는 슬래시(/)를 끝에 사용하는 것으로 표현한다.
  • 느낌표(!)로 시작하는 패턴의 파일은 무시하지 않는다.

작성 예시

# dependencies

/node_modules
/.pnp
.pnp.js

# misc
cert/
.env
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*

.gitignore 파일 적용

gitignore를 커밋하여 원격 저장소에 푸시한다. 하지만 적용이 안됬을 경우 이후에 일처리가 곤란해지니 반드시 아래의 명령어를 사용해줘야 한다.

git rm -r --cached .
git add .
git commit -m "커밋 메세지"
git push origin [브랜치이름]

처음에 cert폴더까지 올라가 당황스러웠었는데 위의과정을 거진 후로 정상적으로 필터링되어 저장소에 올라갔다.

git push시 발생하는 문제

Problem A. git push origin 브랜치명 했는데 이런 오류가 떠요 ㅠㅠ

hint를 통해 친절하게 설명 해 주고 있는데..

Local에서 push하려는 commit과 Github 저장소 내의 commit과 일치하지 않아 발생하는 오류이므로
git pull origin master를 통해 저장소에 있는 파일을 그대로 merge 한 후에 다시 push해주면 된다.

other A.

git fetch를 활용하여 원격저장소의 커밋 정보를 로컬 저장소로 가져온다.

git branch -a를 서용해 로컬/ 원격 저장소의 브랜치 정보를 확인 한다.

git merge origin/[브랜치] 를 사용하여 최종 수정한 파일을 merge해준다.

git push origin matser해서 저장소에 올리자!

other B. (최대한 지양)

여전히 push가 안될때 쓰는 최후의 방법으로 강제로 덮어씌우는 작업이다. 하지만 파일 손실의 위험이 크므로 마지막수단으로 활용해야한다.

git push -f origin master

ref : "pluralsight","fetch 네이버블로그"

profile
다시 처음부터 천천히... 급할필요가 없다.

0개의 댓글