PlayGround/마실가실 리팩토링

[1년 후 마실가실] .gitignore 재적용

HJ0216 2024. 9. 23. 21:02

1년 전 진행했던 마실가실 프로젝트를 🛠️리팩토링하며 정리한 내용입니다.

 

 

 

사실 그간 흐린눈을 하고 있던 작업이 몇 개 있었습니다.

 

그 중에 하나가 .gitignore를 업데이트 하는 것이었습니다.

 

기존에 .idea 파일이 올라가 있고, 그 외 환경 설정 관련 파일들도 올라가있던 것이 있어써 이번에 파일도 업데이트하고, 기존에 Github에 올라가버린 파일들은 어찌하나에 대해서 간단히 정리해보고자 합니다.

 

.gitignore에 적힌 파일들,, git push origin developer를 적더라도,, 그냥 지나가면 돼요,,⭐

 

 

 

1. .gitignore 파일 자동으로 생성하기

https://www.toptal.com/developers/gitignore/

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

저 같은 경우에는 아래와 같이 선택하였습니다.

 

운영체제: Window

개발 환경(IDE): IntelliJ, Visual Studio Code (← Front가 React여서 추가했습니다.)

프로그래밍 언어: Java, React(← JavaScript는 없어서 React를 바로 추가했습니다.)

빌드 도구: Gradle

 

 

2. Github에 올리고 싶지 않은 파일 or 폴더 추가

  • 보안상으로 위험성이 있는 파일
  • 프로젝트와 관계없는 파일
  • 용량이 너무 커서 제외해야되는 파일

저는 API Key가 들어있는 application.properties 파일을 추가해주었습니다.

 

 

3. .gitignore 재 적용

git rm -r --cached . 
git status
git add .
git commit -m "#-- update .gitignore"
git push origin developer

일반적인 push 과정에서 cached가 추가되었습니다.

Git 저장소에서 트래킹 중인 모든 파일을 스테이지에서 제거하지만, 실제 파일은 삭제하지 않는 명령어입니다.

.gitignore에 추가한 파일들이 GitHub에서 제거된 이유는 Git에서 파일을 추적하지 않게 만든 후 커밋을 했기 때문입니다.

⭐ git status를 통해서 git 명령어가 제대로 동작하는지 확인해줍니다.

 

 

4. push 후, Github에서 삭제되지 않는 파일 확인하기

저 같은 경우에는 .ignore에 추가한 .idea 폴더 및 하위 파일이 삭제되지 않았습니다.

add까지는 동작하는데, commit을 하려고하면 commit할 게 없다고 하는데, 제가 분명 봤거든요. add까지 되는걸 말이죠.

 

개인적인 생각으로는

파일 트래킹에서 제거 → 해당 내역 staging → 트래킹하지 않기로 했으므로 원격으로 Commit할 게 없음

의 무한 굴레에 빠진 것 같아 Github에서 폴더를 바로 삭제하였습니다.

누르면 안될 것 같은 Delete directory를 누르면 됩니다.

 

저는 현재 main + developer를 사용하는데, main에서 folder를 삭제했으므로, 혹시 몰라 developer 작업 전 git pull origin main을 한 번 입력했습니다.

 

 

+ .idea를 .gitignore에 추가하는 이유

.idea 폴더는 IntelliJ 의 IDE 옵션(프로젝트별 설정값)을 저장하는 폴더로, IDE 의 각 옵션은 작업자의 컴퓨터 환경에 맞춰서 변경됩니다.

개인 옵션이 설정되어 있는 상태에서 다른 작업자에게 공유하면 오류가 발생할 수 있어 주의 해야 합니다.

따라서 다른 작업자가 소스를 받을때 영향을 주지않기 위해 .gitignore에 .idea를 추가 합니다.

 

 

 

🙋‍♀️

본 포스트는 공부 목적으로 작성하였습니다.
보시는 도중 잘못된 부분이나 개선할 부분이 있다면 댓글로 알려주시면 수정하도록 하겠습니다.

 

📑

참고 자료

https://velog.io/@hxeyexn/Git-.gitignore-%EB%8B%A4%EC%8B%9C-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0

 

[Git] .gitignore 다시 적용하기

프로젝트 초기 생성 때 gitignore를 생성하지 않았거나, 프로젝트 중간에 gitignore 파일을 수정해야할 경우가 종종 생긴다.이때 gitignore 파일 수정만으로는 ignore가 적용되지 않는다.따라서 기존 cache

velog.io

https://otrodevym.tistory.com/entry/GIT-Intellij%EC%97%90%EC%84%9C-gitignore%EA%B0%80-%EB%90%98%EC%A7%80-%EC%95%8A%EC%9D%84-%EA%B2%BD%EC%9A%B0-%EC%A1%B0%EC%B9%98-%EB%B0%A9%EB%B2%95

 

[git] Intellij에서 gitignore가 되지 않을 경우 조치 방법

상황 인텔리제이에서 .class를 제외하고 싶은데 제외가 되지 않았습니다. 문제 파악 .class와 같은 추가 되지 않아야 하는데 제외되지 않는 경우가 있습니다. 이 경우에는 이미 add되어 있기 때문에

otrodevym.tistory.com

https://velog.io/@bybye527/Git-.gitignore-%EC%9D%B4%EB%9E%80-feat.idea

 

[Git] .gitignore 이란? (feat.idea)

보안상으로 위험성이 있는 파일프로젝트와 관계없는 파일용량이 너무 커서 제외해야되는 파일편리성 제공자동생성 사이트 Gitignore.io검색창에 운영체제, 개발환경(IDE), 프로그래밍 언어를 검색

velog.io