git fork 한 저장소 최신화 하기
https://json.postype.com/post/210431 [Git] Fork 한 repository 최신으로 동기화하기 Fork 한 repository 를 최신으로 동기화시켜야 할 때가 있다. Open Source 에 단발성이 아닌 지속적으로 contribution 하려 할 때수정해서 사용하기 위해 fork 해온 원본 repository 에서 업데이트된 부분을 받아 json.postype.com
git commit 할때 주의 해야할 점
commit은 기능단위로 이루어져야한다. 추후에 내가 git history를 보고 이 코드는 이 기능 구현이였지? 알 수 있어야한다. git branch 는 merge 후 삭제하는 습관을 들이자. 만약 merge 하고 오류가 생긴다면 hotfix 브랜치를 만들어서 에러를 잡아주자. npm install 로 모듈을 설치할때마다 commit을 하는 습관을 들이자. 해당 모듈을 설치해서 추후에 node modules depedency 오류가 발생했을때 비교적 찾기 쉬울 것이다. 깃 컨벤션 꼭 지켜주자.
git cherry-pick
cherry-pick은 갈라져있는 브랜치에서 내가 원하는 commit 만 똑 떼서 가져오는 깃 명령어이다. 나는 main branch에 cherry-pick branch에 있는 버그수정을 떼오기를 원한다. 어떻게 해야할까? git cherry-pick [commit 해쉬값] 다음처럼 충돌이 났는데 당황하지 말고 conflict 해결하듯이 하면 된다.
git revert , git revert conflict
git commit main 이 있다. 어떤 내용이 변경되었는지 한번 확인해보자. 다음 내용이 변경되어있다. 이 커밋을 revert 해보자. commit main 으로 바뀐 부분이 다시 그 전으로 돌아간 것을 알 수 있다. revert는 정리하면 해당 commit 이전으로 돌려버리는 것이다. revert 충돌 git history의 뒷부분 commit 을 revert 할때 이후 commit 과 충돌이 나는 경우가 있다. 한번 코드를 보면서 어떤 경우에 충돌이 발생하는지 살펴보자. (commit 이름이 둘다 main이라 죄송합니다. 편의상 top-bottom 순으로 앞main, 뒷main 이라고 하겠습니다) 뒷main은 lala.html의 7번째 라인이 변경된 모습이다. 앞 main도 lala.html 7..
git reset
문제 가정 hard 리셋을 git graph 익스텐션을 사용해서 한번 해보자. 프로젝트를 진행하다가 기능구현을 위해 reset/test branch를 생성했다고 가정하자. 그런데 추가4를 구현하는 도중 엄청난 오류가 발생해서 처음부터 다시 시작해야하는 상황이 되었다. 그래서 추가 commit으로 되돌아가기로 했다. --hard kimdong-yeong@gimdong-yeongs-MacBook-Pro Boxiting-1 % git checkout reset/test git reset --hard b84d08ade14c1e422bcffd6df7a1a3cd756c6912 다음과 같이 reset --hard는 이후 커밋은 모두 날려버린다. 이제 코드를 수정한후 add commit 을 하면된다. 또한 push를 ..
팀 개발을 위한 Git, GitHub 입문 보고 새롭게 알게된 점2
https://inf.run/g1kf 팀 개발을 위한 Git, GitHub 입문 - 인프런 | 강의 개인 프로젝트부터 현업 개발까지, 팀 개발에 필수적인 기술인 Git과 GitHub을 그림을 통해 쉽게 익힙니다. 아예 처음 익히는 분부터 실무 사례가 궁금한 분까지 모두 들으실 수 있습니다. CLI, GUI를 www.inflearn.com 이 글은 진유림님의 팀 개발을 위한 Git, GitHub 입문 강의로 보고 작성한 글입니다. 참고 origin은 원격에 올라간 log 이고 origin이 없는 것은 local 이다. branch branch 는 기능추가 할때 만든다. branch는 HEAD 를 기점으로 만들어진다. branch를 만들때는 항상 HEAD가 어디를 가르키고 있는지 인지를 한 후 만들어야한다...
팀 개발을 위한 Git, GitHub 입문 보고 새롭게 알게된 점
https://inf.run/g1kf 팀 개발을 위한 Git, GitHub 입문 - 인프런 | 강의 개인 프로젝트부터 현업 개발까지, 팀 개발에 필수적인 기술인 Git과 GitHub을 그림을 통해 쉽게 익힙니다. 아예 처음 익히는 분부터 실무 사례가 궁금한 분까지 모두 들으실 수 있습니다. CLI, GUI를 www.inflearn.com 이 글은 진유림님의 팀 개발을 위한 Git, GitHub 입문 강의로 보고 작성한 글입니다. git clone git clone 할때 뒤에 . 을 찍어줘야 현재 폴더에 내려받을 수 있었다. . 을 찍지 않으면 새 폴더를 생성한다고 한다. 이때까지 . 안찍었는데.. git clone https://github.com/아이디/이름.git . 협업자 에게 내 GITHUB 레포..
GitHub 에서 GitLab으로 저장소 이전하기
오늘은 GitHub 에서 GitLab으로 저장소를 이동하는 것에 대해 배웠습니다. Developer settings 를 클릭합니다. Personal access tokens 를 클릭합니다. 새로운 토큰의 내용을 간단히 작성하고 저장소를 옮기기 위한 토큰이기 때문에 여러 가지 scopes 중에서 repo만 선택하시면 됩니다 그리고 하단의 Generate token를 클릭하여 생성하여 줍니다 완료하고 나면 토큰이 생성되는데 다시 볼수 없게 되므로 잘 기억해두어야합니다. 이제 GitLab으로 넘어갑시다! import를 클릭합니다. status 가 complete가 되면 이전이 완료된 것입니다! 참고자료 https://msyu1207.tistory.com/entry/Github%EC%97%90%EC%84%9C-..
다른분 레포 코드를 뜯어볼때 초기커밋으로 되돌아가는 방법
최근에 내가 구현하고 싶은 기능과 유사한 프로젝트를 찾을 수 있었다. 하지만 이미 완성이 된 프로젝트이기 때문에 코드를 전부 이해하는데 어려움이 있었다. 그래서 처음부터 차근차근하게 코드를 뜯어보고 싶었다. 보통 git reset 을 사용하면 해당 커밋으로 돌아갈 수 있는데 돌아가지가 않았다. 뭐가 원인인지 잘 모르겠었다. git reset [돌아가고 싶은 commit hash값] 그래서 채팅방에 질문을 드렸다. git reset 명령어는 정상적으로 실행이 되었지만, 아래 코드를 실행시켜주어야지만 해당 코드로 돌아갈 수 있다. git add . git reset --hard 비록 익명이지만 답변주신 분께 너무 감사하다고 말씀드리고 싶다.
git reset 특정 커밋으로 돌아가기.
최근 프로젝트를 진행하면서 백엔드분이랑 많은 소통을 하고 있다. 그런데 백엔드 코드의 이전 커밋으로 돌아가고 싶은 경우가 있었다. 그럴경우엔 어떻게 해야할까? 나는 7594ca2 커밋으로 되돌아 가고싶다. (이미 가장 최신의 pull을 한 상태라고 가정하자) 해당 commit 을 복사하자. 이제 아래의 reset 명령어를 통해 해당 commit으로 이동할 수 있게된다. git reset 7594ca297f374eb783 정현님 알려주셔서 감사합니다.