새소식

Jay's Life log

210405.

  • -

Git issue

  • 열심히 작업하면서 commit을 쌓는데, 중간에 같은 branch로 commit이 5개 정도 들어왔다.
  • 근데 conflict commit이라서, 당시 생각으로는 아직 commit 안 했으니까 commit을 reset하고, pull 받고, commit하자! 라고 정리했었다.
  • 근데 commit을 reset하기 전에, 혹시나 싶어서 pull을 받아봤더니 ! ! !
    • conflict commit이 있어서, pull이 되지 않는다.
    • 그래도 내용이 궁금해서, git stash를 써서 현재 상태를 잠시 저장하고, pull을 받아 봤다. (사건의 시작1)
    • 잘 받아졌고, git stash apply를 하자, 문제가 발생했다. (사건의 시작2)
    • pull commit에서는 지운 디렉토리를 내가 사용하고 있고, 난리가 부르스가 났다. (초록색으로 뒤덮인 디렉토리)
    • 그래. commit을 취소해보자................... (사건의 시작3)
    • 검색해서 찾은 git reset --hard HEAD를 의심없이 실행
    • >> stage된 파일 + 변경했던 working directory 파일들이 싹둑 날아갔다.
    • >> 멘탈이 나감
    • 울며겨자먹기로 복습한다 생각하고, 깨끗해진 working directory에서 pull을 받았다... ^^
    • 어라 아직 conflict commit이 있단다. 알고 보니, HEAD는 가장 최근 하나만..^^
    • 내가 작성했던 커밋 6개를 모두 취소하기 위해, git reset --mixed HEAD^6 을 수행했다.
    • 그리고 열심히 재 코딩하고..... 하나씩 커밋했다!
    • 더 나은 방법을 찾았다면 좋겠지만, 일단 오늘 급하게 업무는 목표 달성했다....
  • 참고했던 reference
  • stage에 올린 commit message에 실수를 발견하고, 수정하고자 했다.
  • 참고했던 reference (stage에 있는 commit message 수정)
    1. https://racoonlotty.tistory.com/entry/git-commit-%EC%B7%A8%EC%86%8C%ED%95%98%EA%B8%B0?category=730299?category=730299
    2. http://tech.javacafe.io/2018/03/01/how-to-change-git-commit-message/
  • 다음 키워드를 배웠다.
    1. stage 된 커밋 중, 가장 최근 커밋을 수정하려면 다음 명령어를 수행한다.
      1. git commit --amend 
        1. 제목 줄을 수정한 후, :wq로 저장
      2. 또는 git commit --amend -m "<message>" 으로 한 방에 수행
    2. stage 된 커밋 중, 최근 [N]번째 커밋을 수정하려면 다음 명령어를 수행한다.
      1. git rebase -i HEAD~[N]
        1. 이 결과로, [N]개의 Commit log가 보여진다. 여기서 변경할 commit row의 pick을 edit으로 수정하여 :wq로 저장
        2. 이 상태는 edit으로 수정된 commit으로 HEAD가 변경된 상태이므로, git commit --amend를 수행하면 된다. (1번과 같음)
        3. 변경 다 했으면 git rebase --continue 로 적용해준다.

 

 

 

+ 최근 node js와 feather js를 함께 공부하고 있다. (프로젝트 적용)

+ openapi document generation 업무를 수행했는데, 어떻게 한 건지 모르겠다. 공부할 필요가 있다.

+ keycloak을 docker에 올려 sso server로 운영하고 있다. 이게 말을 제대로 한 건지 모르겠는걸로 보아, 이쪽 관련 모두 정리가 필요하다..............................................

 

+ 아까 저 두 가지 상황 중에, 어느부분에선가 막혀서 git pull을 다르게 썼다. fast forward에 커밋 뭐시기 뭐시기 무지막지 메세지가 떠서, 급하게 찾다가 git pull --ff-only 옵션으로 pull을 받았던 것 같다.

+ fast forward가 뭔지, --ff-only가 뭔지 좀 알아야겠다. (*)

+ 참고했던 Reference : sanghye.tistory.com/43

 

 

  • 새벽부터 미국쪽 간호사분께서 FHIR에 대해 물어보셨다. FHIR의 pros and cons... 에 대해서 간만에 깊게 생각해보게 된 계기였다 싶다.
    • 결론은 아직도 개발하기 너무너무 어렵고 방대하고, Big Tech 기업들(Amazon, IBM, microsoft, google)은 너무 뚝딱뚝딱 그걸 잘 해낸다................. 이걸 연구해서 성과가 날까?

 

'Jay's Life log' 카테고리의 다른 글

세상엔 개발자가 너무 많다.  (0) 2023.01.31
ChatGPT의 위험성  (0) 2022.12.28
nodejs docs를 자세하게 뜯어봐야겠다는 생각이 들었다.  (0) 2022.10.14
나만 몰랐어 TL;DR  (0) 2022.05.11
쓸거 목록  (0) 2022.04.20
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.