만약 어떤 파일을 추가해야 하는데 까먹고 commit 을 안했을 시 commit 에 추가하고 싶다면 어떡해야 할까??
main 이외의 모든 branch들을 삭제해주고, 초기로 돌아가 chapter.one.txt 파일만 만들어주었다.
commit 후 origin 에 push 까지 해주자.
이 때 만약 우리가 chapter_two.txt 파일도 같이 commit 해주었어야 하는데 실수로 추가를 안했다고 가정해보자.
위와 같이 chapter_two.txt 파일을 만들어주자.
물론 우리는 따로 commit을 해서 이 파일을 올릴 수도 있을 것이다. 하지만 우리는 전 commit에 이 파일의 생성 내용도 추가하고 싶다.
terminal 에 git commit --amend --no-edit 을 입력해보자.
amend는 가장 마지막 commit을 수정하는 명령어이다.
위의 명령어는 가장 마지막 commit을 수정할 수 있고, commit 메시지는 수정할 수 없다.
위의 명령어를 입력후 origin 에 push 해준 뒤 github 를 봐보면 commit 에 chapter_two.txt 를 추가했다는 내용이 포함되어 있는 것을 확인할 수 있다!!
추가적인 유용한 정보로 terminal 에 git status 라는 명령어를 치면 수정한 파일이 현재 stage 영역에 있는지, unstaged 영역에 있는지 알아볼 수 있다.
만약 파일이 unstage 영역에 있다면 위와 같이 빨간색으로 표시되어 나타난다.
stage 영역에 있는 파일은 위와 같이 초록색으로 표시되어 나타난다.
또한 파일을 git에서 숨기는 방법도 있다.
만약 위와 같이 중요한 정보가 담긴 .env 파일을 github 에 올리고 싶지 않은 상황이라고 가정해보자.
.gitignore 파일을 하나 만들어주어서 올리기 싫은 파일이나 폴더를 .gitignore 파일에 넣어주면 된다.
다음과 같이 .gitignore 파일에 .env 파일을 넣은 후 terminal 에 git add . 후 git status 를 입력해보면
위와 같이 .env 파일은 보이지 않는 것을 확인할 수 있다!!
한번 image 라는 폴더에 img.jpg 라는 파일도 만들어보자.
terminal 에 git add . 후 git status를 쳐보면
다음과 같이 이미지 파일이 초록색으로 나타나보인다.
이 폴더 전체를 숨기고 싶으면 .gitignore 파일에 /폴더명 을 입력해주면 된다.
그런데 폴더 안에 있는 파일이 이미 stage 영역에 올라가 있는 상황이므로 이를 해결해보자.
terminal 에 git rm -r 폴더명/ --cached 를 입력해주면 파일이 stage 영역에서 내려오게 된다!! (-r 은 작업내용이 폴더이기 때문에 넣어주는 명령어.)
즉, 만약 github 에 올리고 싶지 않은 폴더나 파일이 있다면 .gitignore 파일에 그 파일들이나 폴더들을 올린 후, git의 stage 영역에서 제거해줘야 한다!!
'Git&Github' 카테고리의 다른 글
명령어로 원격 저장소 관리 & Clone 하는 법을 알아보자! (0) | 2022.09.22 |
---|---|
과거 Commit에서부터 Branch를 만드는 법 (0) | 2022.09.17 |
Mixed reset & Soft reset 이란? (0) | 2022.09.15 |
Checkout & HardReset 이란? (0) | 2022.09.11 |
CLI log & Commit & Push 란? (0) | 2022.09.07 |