Git
-
-
[Git]내가 원하는 커밋만 고르고 싶다(Cherry-Pick)Git 2023. 8. 2. 21:23
내가 올린 pull request에 다른 팀원의 commit이 섞여 버렸다고 연락이 왔다. 이미 올린 pull request에서 commit을 빼는 방법은 모르겠다… 일단 나의 git은 -master(팀의 마스터 레포지토리와 같은 상태) -MyPlaceSearch(내가 새로 만든 코드가 있는 브랜치) 이 상태였다 그런데 MyPlaceSearch에서 올린 PullRequest에 다른 팀원의 commit이 섞인것!! 이유는 아직 모르겠다…다음에 여쭤봐야지 그래서 알아낸 방법이 Cherry-Pick이었다 cherry-pick이란 케이크 위에 얹어져 있는 체리만 집어먹는 행위라는 의미로 ‘인기있는 특정 요소만 고른다’라는 뜻이다. 일단 사용 방법은 새로운 branch를 만들고 git cherry-pick [SH..
-
[Git]commit 하지 않고 checkout하면?Git 2023. 7. 26. 21:26
문제상황 브랜치를 만들고 작업하다가 잠시 master브랜치에서 확인해야할 것이 있어서 git checkout master 저장만 한 채로 master브랜치로 옮겨왔더니 ... 팀의 master브랜치와 동일해야할 나의 master브랜치가 작업 중이던 코드로 바뀌어 있었다. 발생 이유 "Git은 데이터 손실을 피하려 한다." 때문에 Branch A에서 작업하다가 커밋하지 않은 내용이 있을 때 Branch B로 checkout하면 git은 Branch A의 커밋되지 않은 변경사항을 체크아웃한 Branch B로 따라가져온다. 이는 git이 최대한 불필요한 데이터 손실을 피하고자 하기 위함이라고 한다. checkout시 변경사항을 버리고 가고 싶다면 git checkout -f 명령으로 체크아웃시 변경사항을 버리..
-
[Git]branch작업이 끝났을때Git 2023. 6. 8. 03:29
나의 작업: MyPagePlace라는 브랜치에서 작업->pull request올리고 원본에 mearge->MyPagePlace브랜치 삭제, master에 pull 받기 git branch -d 브랜치 이름 을 해주면 브랜치가 삭제되는데 error: Cannot delete branch 와 같은 오류가 뜨면서 브랜치 삭제가 안된다면 그건 지금 이는 현재 브랜치가 삭제하고자 하는 브랜치 이기 때문이며 아래와 같이 브랜치를 전환한 후에 삭제하면 된다. git checkout master warning: deleting branch 'MyPagePlace' that has been merged to 'refs/remotes/origin/MyPagePlace', but not yet merged to HEAD. ..
-
[Git]git pull 하려는데 오류가 뜬다(error: Your local changes to the following files would be overwritten by merge:)Git 2023. 6. 7. 21:24
git stash pop error: Your local changes to the following files would be overwritten by merge: 내 코드를 올리기 전에 다른 팀원의 코드를 pull 받아 충돌을 피하려 했는데 위와 같은 오류가 떴다 git add해도 해결이 안되고... 답은! 해결방법 : git stash - 현재 디렉토리의 파일을 임시로 백업하고 깨끗한 상태로 돌린다. - 버전관리 되는 대상 파일들을 임시저장 해둔다고 보면 된다. 1) 해당 명령어를 통해 현재 Staging 영역에 있는 파일의 변경사항을 스택에 넣어 둔다. git stash 2) master에서 pull하거나, git checkout 등 원격 저장소에서 내 로컬 브랜치로 변경사항을 적용한다. g..