일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- text
- Stanford
- tab
- install
- machinelearning
- Statistics
- code
- cs224n
- git
- deeplearning
- paper_review
- cs231n
- pip
- gensim
- seq2seq
- natural_language_processing
- terminal
- nlp
- json
- error
- Standford
- Ai
- review
- computer
- github
- Vim
- slideshare
- computer_setting
- linux
- language_model
- Today
- Total
NLP/AI/Statistics
Git commit message 변경 및 이전 작업 상태로 돌아가기 본문
Git을 사용하는 과정에서 어려움을 겪었던 문제 중에 하나이다.
파일을 업로드하였고 commit message를 작성하는데 잘못 작성된 상태에서 push를 했다.
이를 그냥 둘 수도 있었지만, 정확한 commit message를 업로드하고 싶었기 때문에 이를 수정하려고 검색하였다.
# commit message 바꾸는 방법
git commit --amend -m "new_commit_message"
git push -f
위의 코드를 작성하면 되었지만, 항상 'git push'로만 작성하던 습관으로,
아래의 코드를 git push -f 가 아닌 git push로 계속 작성하였고 역시나 계속 잘못된 message는 바뀌지 않았다.
계속 안되는 것 같아 결국 지우고 다시 넣어버리자! 라는 마음으로 rm 하고 다시 업로드 하는 방식으로 진행하였지만,
어쩐 일인지 갑자기 git status 상에서 git pull을 하라는 언급이 나왔고,
git pull을 할 경우, 데이터의 변환이 생길 것 같아 이를 처리하지 않았다.
하지만 계속해서 나타나는 git pull 알림에, git pull 취소를 알아보았다.
이전 작업으로 넘어가는 방법이었고, 이를 위해 아래의 코드를 작성하면 된다.
# 이전 작업 위치로 돌아가는 방법
git reflog
git reset --hard HEAD@{number}
git reflog를 작성할 경우, 최근의 directory와 history가 뜬다.
이 중, 돌아가고 싶은 history로 돌아가 git pull의 상황이 나타나기 전으로 돌아갈 수 있었다.
결국, git pull 알림이 나타나기 전으로 돌아갔지만 여전히 commit message는 잘못 작성된 상태였고,
다시 위에서 검색한 코드를 정확히 작성해보자 하여 해보니 되었다.
"git push - f"을 정확히 작성한 후에 commit message가 바뀌는 것을 확인할 수 있었다.
git push -f 의 f는 force라는 의미로 force updates의 역할을 한다.
#. 추후에 알게된 사실
위와 같이 이전 작업으로 임의로 돌아갈 경우, banch가 엉키는 문제가 발생할 수 있다고 한다.
이전 작업으로 돌아가는 작업은 위와 같이 뭔가 잘못해서 그 때로 돌아가기 위해 사용하는 것이 아니라,
이전 작업의 커밋을 확인하기 위해 사용한다고 한다...
이점을 주의해서 git reset --hard HEAD@{number} 코드를 사용해야할 것 같다.
'Git' 카테고리의 다른 글
Git 원격 저장소 연결 및 끊기 (git remote) (0) | 2021.01.20 |
---|---|
Git add, commit 취소 (0) | 2020.10.13 |
Git 코드 요약 정리 (0) | 2020.09.29 |
Git 개념 (0) | 2020.09.29 |