rebase 를 진행한 뒤에 푸시를 해야하는데생각없이 원격저장소에 푸시해놓은 브런치를 rebase 해버렸다. (근데 이거 왜 푸시해놨지 ㅋㅋ;;) 그래놓고 푸시명령어를 친 후에야 잘못됐음을 인지했다 ^^;아래와 같은 상황이 되었다. 이미 D 라는 커밋을 만들었기 때문에 rebase 하면 D' 가 생겨서 D와 D' 사이에 머지점이 다시 생긴다 혼자 작업하는 브랜치라면 간단하게 force push 로 해결하면 되긴 한다. $ git push -f 강제로 푸시하면 D 커밋이 날라가고 D' 으로 교체된다.하지만 협업했던 브랜치였다면 포스 푸시를 많이 고려해 보아야 할 것이다. 나는 이 상황을 모두 되돌려서 다시 시작하고 싶었다. (굳이 ... ㅋㅋ) 원격에 푸시했던 브랜치를 rebase 하고 pus..
회사 PC를 오랜기간 사용해서 변경하고 소스폴더들이 있는 디스크만 옮겼는데 OS 유저가 변경되어 올바른 깃 로컬 레포지토리가 동작이 되지 않았다. 근데 이는 간단하게 해결 할 수 있다. git status 를 입력하면 company@jaybee MINGW64 /d/GitHub/project $ git status fatal: detected dubious ownership in repository at 'D:/GitHub/project' 'D:/GitHub/project' is owned by: BUILTIN/Administrators (S-1-5-32-544) but the current user is: jaybee/company (S-1-5-21-3506454000-962289665-893259382..
브랜치끼리 머지하다 보면 충돌이 나서 해당 부분을 해결해야 하는데가끔 브랜치의 내용을 유지하면서 특정 브랜치의 내용을 전부 엎어버릴때?아니면 test 브랜치의 경우 특정 브랜치 것을 그대로 가져오고 싶을 때가 있을때가 있는데...(보통은 그 특정 브랜치에서 다시 테스트 브랜치를 따서 시작하겠죠?) 위의 여러 상황에 따라 머지해야하는 경우,너무 버전차이가 나버리면 충돌파일이 너무 많아서 해결을 할 수가 없기 때문에두 브랜치 중 한쪽을 선택하라고 알려주면 덮어쓸 수 있게 된다. 그 깃 명령어는 다음과 같다.git checkout testgit merge -Xtheirs dev test 브랜치를 dev 브랜치로 병합하면서 충돌내용을 dev로 덮어써라 !위 명령어를 사용하면 충돌되는 내용을 dev 내용으..