본문 바로가기

Git

[Git] .gitignore 특정 파일 or 폴더 무시하기

메일을 보는데 메일에 찝찝한 내용의 메일이 왔다..!?

‘GitGuardian은 귀하의 GitHub 계정 내에 노출된 다음 SMTP 자격 증명을 감지했습니다.’라는 메일이 한통 와 있었다. 앞 전에도 오픈 API 사용하면서 비슷한 메일을 받은 적이 있었는데 이번에 해결하고 기억하고자 글을 써놓아야겠다.

해결 방법은 여러 가지가 있었지만 나는 우선 해결한 방식으로 글을 써보려고 한다.

  • .gitignore 파일에 무시할 파일 or 폴더를 작성해 주자.
예시)
- 파일 무시
application-security.yml
test.txt

- 전체 무시
*.text
*.yml

- 폴더 무시
test/
  • 아래와 같은 순서로 터미널에 입력하면 된다.
1. git add .
2. git commit -m "ignore file"
3. git push origin master

🚨 주의사항 🚨

  • 기존의 git의 관리를 받고 있던 즉, 이미 commit 된  파일이나 폴더는. gitignore 파일에 작성하고 위와 같은 명령어를 입력해도 그대로 무시되지 않고 파일이 올라간다... push 한 걸 HEAD 포인트를 찾아서 삭제해서 하는 방법이 있고, cached 방법이 있다고 하여 나는 후자를 택했다.
- 파일인 경우
git rm --cached test.txt

- 전체 파일인 경우
git rm --cached *.txt

## 폴더일 경우
git rm --cached test/ -r
  • 위와 같은 방법으로 하면 된다고 하는데 나는 안되었다.

💡 나의 해결 방안 💡

  1. 나는 application-security.yml 이란 파일을 만들어서 민감한 정보를 옮겼다.
  2. 이미 파일을 올렸던 상황이라서 .gitignore 파일에 application-security.yml을 해도 적용이 안되었던 것이다.
  3. 우선 로컬에서 application-security.yml 파일이 존재하는지 찾았다.
    • 해당하는 파일이 있는 경로까지 이동했다.
  4. 이동한 후에 git rm --cached application-security.yml 명령어 입력 하니까. 위에서 안되다가 무시가 되었다.
  5. 변경사항을 스테이징 영역에 추가하고 커밋했다
    1. git add .
    2. git commit -m "Remove application-security.yml"
  6. 마지막으로 git push로 해결완료

'Git' 카테고리의 다른 글

[Git] Git Stash 알아보기  (0) 2023.12.20
[Git] Git Bash 란? Git Bash 명령어  (0) 2022.03.29
[Git] Git 과 Github 의 차이  (0) 2022.03.29