Revert란? revert는 롤백할 때 롤백한 커밋이 새로 찍히며, commit point가 과거로 되돌아가지 않음 reset은 롤백하면 commit point가 과거로 돌아가며, 롤백 내역 삭제 revert 사용 - 이미 remote에 푸시가 되었을 때 로컬에서 과거의 커밋을 수정하고 push할 경우 변경이 어려움로컬에서 변경 후 git push -f하면 되지만 위험revert 사용하여 로컬에서 변경 후 push하면 변경 (커밋포인트가 과거로 가서 과거의 내용을 변경하는것이 아니므로) revert 사용 방법 예제 커밋 - 순서대로 1번, 2번, 3번 각 print()추가 print(1) print(2) print(3) git reflog를 통해 롤백할 commit ID 확인 2번 커밋을 롤백하고 싶은..
GIT/GIT 배워보기
git merge(병합) git merge는 두 개의 브랜치를 합칠 때 사용합니다. 아래 base와 target은 브랜치 이름이며 base가 current(현재), target이 incoming(머지 받은 것)이 됩니다. base에 target의 코드를 합치며 같은 부분에 수정 사항이 있으면 conflict(충돌)이 발생합니다. git merge git merge dev test git merge origin dev origin test git merge origin/dev origin/test # 혹은 git checkout git merge 머지를 실행하게 되면 IDE에 따라서 다르지만, 아래와 비슷한 화면을 볼 수 있습니다. Current가 머지가 실행되는 브랜치, Incoming이 코드를 가져온 ..
git push push는 로컬에 있는 소스 코드를 리모트로 올리는 액션입니다. push를 하기 위해선 꼭 커밋을 남겨줘야 합니다. git push git push origin dev git push 사실 푸쉬는 커밋을 리모트 브랜치에 올리는 액션입니다. 실제 리모트에 반영되는 액션이기 때문에 가장 흔하면서도 매우 조심해야 하는 액션입니다. git push -f 가끔 push가 안될 때가 있습니다. 이럴 땐 강제로 푸시를 하는 -f 옵션을 사용합니다. 위 옵션은 매우매우 신중하게 사용해야 합니다. -f를 사용하는 경우는 아래와 같습니다. reset등의 명령어로 브랜치의 최신 커밋보다 뒤로 간 후 커밋을 지울 때 merge, rebase 등의 명령어로 merge 커밋이 생겨 충돌이 생겼을 때 대부분 커밋에..
git commit 커밋(commit)은 깃의 세이브 포인트를 만드는 명령어입니다. 링크드 리스트의 헤드와 같습니다. 커밋에는 커밋 메세지 커밋 주소 변경 사항 변경 날짜 과 같은 정보가 포함됩니다. git commit -m 커밋엔 Staged Changes에 올라간 변경 사항들만 저장됩니다. 커밋을 남기기 전에 꼭 확인해주세요. 전체 파일을 add하는 명령어는 **git add .**입니다. 그 후에 **git commit -m “남기고 싶은 메세지”**을 터미널에 입력하면 커밋을 남길 수 있습니다. git commit -a git add . 을 실행시켜줍니다. 커밋을 하기 전에 git add . 을 해서 변경 사항을 staged에 올려줘야 되는데 이 행동을 줄여줍니다. 즉 git commit -am ..
git config git을 설정하기 위한 명령어입니다. cmd에 git config라고 쳐볼까요? git config 명령어에 대한 설명이 주르르륵 나오는걸 볼 수 있습니다. 대충 참고 용으로만 보고 넘어갑시다. Hoxy… 더 자세하게 보고 싶으신 분은 git config —help라 치시면 git의 메뉴얼 페이지가 뜨는걸 볼 수 있습니다. 링크는 아래와 같아요. 링크: file:///C:/Program%20Files/Git/mingw64/share/doc/git-doc/git-config.html 메뉴얼 페이지를 프로그램에 넣어두다니.. 정말 친절한데 사실 볼일은 없을 것 같다… 깃 미안 git config를 사용하게 되는 가장 많은 사례는 user.name과 user.email을 수정하기 위해서 제..
docs: https://git-scm.com/book/ko/v2/Git-도구-Stashing과-Cleaning git stash stash는 영어로 “넣어두다” 란 뜻입니다. 위의 pull, push는 익숙해도 stash는 생소한 사람들이 많습니다. push, pull은 코드를 올리고 내리는데 필수적인 액션이라면 stash는 이 과정을 편하게 해주는 부가적인 도구이기 때문입니다. 그렇기 때문에 알고 있으면 정말 정말 정말 편합니다. stash는 스택 구조로 관리되기 때문에 명령어도 stack의 함수와 비슷합니다. git stash # 현재 변경 사항을 stash에 저장함 git stash list # store에 저장된 stash 리스트 보기 git stash apply # store의 맨 위에 있는(..