[Git] 깃(Git)의 원리(3, Branch 정리)와 브랜치 병합(Merge / rebase)
·
Git
브랜치(Branch)란?소프트웨어를 개발할 때 개발자들은 동일한 소스코드를 공유하고 다루게 된다. 동일한 소스코드 기반으로 여러 사람이 서로 다른 작업을 하게 된다면 서로 다른 버전의 코드가 만들어지게 되는데 이럴 때 여러 개발자들이 동시에 다양한 작업을 할 수 있게 만들어 주는 기능인 브랜치를 사용한다.기존 소스 코드에 새로운 기능을 만들어 새 버전을 만들더라도 기능이 오류 없이 완벽하게 동작한다는 보장이 없고 오히려 기존에 잘 작동되던 기능도 동작하지 않을 가능성도 있다. 깃에서 브랜치는 여러 작업을 각각 독립된 공간에서 진행할 수 있도록 하는 기능이다.하나의 브랜치는 각자의 독립적인  워크스페이스, 인덱스, 로컬 레포지토리, 리모트 레포지토리 공간을 가져 다른 브랜치의 영향을 받지 않고 소스 코드와..
[Git] 커밋 취소/되돌리기/덮어쓰기(reset / revert / amend)
·
Git
커밋 취소하기git resetgit reset 명령어는 현재 커밋한 내역을 특정 시점으로 되돌리고 싶을 때 사용하는 명령어이다. 옵션에 따라 취소, 삭제되는 대상이 달라지기 때문에 상황에 따라 적절한 옵션을 선택하여 사용해야 한다. 자주 사용되는 옵션으로 hard, mixed, soft가 있다.git reset --softreset --soft 옵션을 사용하면 현재 브랜치가 가리키는 커밋을 바꾼다. git commit --soft "커밋 아이디"Index나 워킹 디렉토리는 그대로 놔두고 브랜치가 가리키는 커밋만 이전으로 되돌린다.  HEAD는 계속 현재 브랜치를 가리키고 있기 때문에 HEAD 브랜치를 이동시키는 것과 같다. (저장소만 삭제(HEAD))reset 명령에 커밋을 넘기고 실행하면 언제나 이런 ..
PP_D
'Reset' 태그의 글 목록