[Git] Github에 잘못 올라간 파일 삭제하기

.gitignore을 설정하지 않고 github remote에 push한 경우

Goal

github에 잘못 올라간 파일을 삭제할 수 있다.

.gitignore을 설정하지 않고 github remote에 push한 경우, 잘못 올라간 파일을 삭제할 수 있다.

 

들어가기 전

 

예를 들어, IntelliJ IDE를 사용할 때 .out 폴더를 .gitignore에 넣지 않고 원격 저장소에 push했다고 가정하자. (IntelliJ의 .out 폴더: 빌드/컴파일 시 .class 파일이 포함된 프로젝트의 출력이 포함되는 위치)

 

 

Github에 잘못 올라간 파일 삭제 과정

1. 원격 저장소에서 파일 삭제하기

이미 github remote에 push를 했기 때문에 로컬의 저장소에서 파일을 삭제해도 원격 저장소에서는 삭제되지 않는다.

 

git rm VS git rm –cached

// 원격 저장소와 로컬 저장소에 있는 파일을 삭제한다.

$ git rm [File Name]

// 원격 저장소에 있는 파일을 삭제한다. 로컬 저장소에 있는 파일은 삭제하지 않는다.

$ git rm --cached [File Name]

따라서 아래와 같이 git rm –cached [File Name] 명령어를 이용하여 원격 저장소에서 잘못 올라간 파일을 삭제해야 한다.

 

// .idea/modules.xml 파일 삭제

$ git rm --cached .idea/modules.xml

// .idea 폴더 하위의 모든 파일 삭제 

$ git rm --cached -r .idea/

2. .gitignore 설정하기

만약 .gitignore가 제대로 설정되어 있지 않다면 .gitigore 설정하여 다음에는 개인이 관리해야되는 파일들이 원격 저장소에 올라가지 않도록 해야한다. .gitignore 설정하기 를 참고하여 .gitignore를 설정한다.

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

TIP) 또한 .gitignore는 git add 명령어 전에 설정되어 있어야 적용이 가능하다는 것을 알아두자.

 

3. 원격 저장소에 적용하기

버전 관리에서 완전히 제외하기 위해서는 반드시 commit 명령어와 push를 수행해야 한다.

 

// 버전 관리에서 완전히 제외하기 위해서는 반드시 commit 명령어를 수행해야 한다.

$ git commit -m "Fixed untracked files"

// 원격 저장소(origin)에 push

$ git push origin master

[참고] Github에 올라간 Commit 내역까지 삭제하는 방법

git 명령어 실수 해결하기에서 git push 취소하기를 참고하시기 바랍니다.

 

git rm 옵션 참고

 

 

관련된 Post

.gitignore 설정하는 방법에 대해 알고 싶으시면 .gitignore 설정하기를 참고하시기 바랍니다.

git add / git commit / git push를 취소하는 방법에 대해 알고 싶으시면 git 명령어 실수 해결하기를 참고하시기 바랍니다.

References

https://devlog.github.io/git/2015/12/23/git-ignore-tracked-files.html

http://mobicon.tistory.com/266

https://gmlwjd9405.github.io/2018/05/17/git-delete-incorrect-files.html

 

[출처] https://gmlwjd9405.github.io/2018/05/17/git-delete-incorrect-files.html

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
1076 [ 一日30分 인생승리의 학습법] TeX_및_LaTeX_수식_문법 file 졸리운_곰 2022.03.19 109
1075 [ 一日30分 인생승리의 학습법] Visual Basic application on linux 졸리운_곰 2022.02.22 52
1074 [ 一日30分 인생승리의 학습법] Truffle을 이용한 DApp 개발환경 구성 file 졸리운_곰 2022.02.20 104
1073 [ 一日30分 인생승리의 학습법]LaTeX 활용해서 논문쓰장 file 졸리운_곰 2022.02.17 49
1072 [ 一日30分 인생승리의 학습법] LaTeX 초보자가 감을 잡는 것을 돕는 몇가지 팁 졸리운_곰 2022.02.17 318
1071 [ 一日30分 인생승리의 학습법] 수식 입력이 가능한 마인드맵 프로그램, 프리플레인(freeplane) file 졸리운_곰 2022.02.16 87
1070 [ 一日30分 인생승리의 학습법] Awesome Metaverse Awesome 짱!~ 메티버스 오픈소스 file 졸리운_곰 2022.02.13 45
1069 [ 一日30分 인생승리의 학습법] 제 NAS의 Docker 목록 file 졸리운_곰 2022.01.31 151
1068 [ 一日30分 인생승리의 학습법] gw basic 튜터리얼, 메뉴얼, A GW-BASIC Tutorial 졸리운_곰 2022.01.22 52
1067 [ 一日30分 인생승리의 학습법] Web Search Engine : 웹 검색 엔진 google/ naver 만들기 file 졸리운_곰 2022.01.17 39
1066 [ 一日30分 인생승리의 학습법] AILog 2 A logic programming language with probabilities and logical explanation and debugging faculities file 졸리운_곰 2022.01.16 32
1065 [ 一日30分 인생승리의 학습법] 소스 인사이트( source insight ) 사용법 file 졸리운_곰 2022.01.13 51
1064 [ 一日30分 인생승리의 학습법][메타버스란 무엇인가?] The Metaverse Has Already Arrived. Here’s What That Actually Means file 졸리운_곰 2021.12.29 52
1063 [ 一日30分 인생승리의 학습법] English to Logic, Truth-Functional Propositional Logic 졸리운_곰 2021.12.15 40
1062 [ 一日30分 인생승리의 학습법][실무행정] 기안문 공문서 기안문 작성법, 행정안전부 지침 및 시행 file 졸리운_곰 2021.12.11 103
1061 [ 一日30分 인생승리의 학습법][실무행정] 기안문 작성하기 졸리운_곰 2021.12.11 47
1060 [ 一日30分 인생승리의 학습법] 셀레니움 헤드리스 테스트를 위한 HTMLUnitDriver 및 PhantomJS file 졸리운_곰 2021.11.26 123
1059 [ 一日30分 인생승리의 학습법] 메타버스로 날개 단 오픈소스 프로젝트 file 졸리운_곰 2021.11.23 254
1058 [ 一日30分 인생승리의 학습법] Best JavaScript machine learning libraries in 2021 file 졸리운_곰 2021.11.20 37
1057 [ 一日30分 인생승리의 학습법] 프로그래밍 언어별 딥러닝 라이브러리 정리 file 졸리운_곰 2021.11.19 60
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED