태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
BLOG main image
Not so Simple World (251)
이생각 저생각 (92)
이클립스 RCP (10)
Books (15)
잊기전에 회고 (7)
Better SW Development (83)
node.js (OctoberSkyJs) (32)
[뭘, 이런걸 다?] (12)
bảng giá máy tính xách tay
bảng giá máy tính xách tay
Beer Brewing Tutorials
Beer Brewing Tutorials
harga alat kesehatan spirometri
harga alat kesehatan spirometri
air max pas cher
air max pas cher
veste parajumpers
veste parajumpers
«   2017/06   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
797,040 Visitors up to today!
Today 78 hit, Yesterday 203 hit
rss
tistory 티스토리 가입하기!
Recent Entries
2013.04.04 11:14

git add . 이나 git commit -a 를 자주 쓰다보면 자칫 실수로 원하지 않는 파일이 커밋에 포함되어 버리는 경우가 있습니다. 


상황



원래는 26d0ab1에 포함되어야 할 파일이 96a41e9 커밋에 포함되어 버림. 

(그냥 가도 되긴 하지만 게으르면서도 집착증세가 있는 나란 동물...)


되돌리기 작업 시작!


rebase 옵션으로 한 단계 뒤로 돌아가서 시작. 원하는 commit을 pick 한다.

지금 같은 경우엔 26d0ab1 와 96a41e9 를 선택한다.


    git rebase -i 96a41e9ef2d9747e7b34ae424b0c845ab7092ee4^


불필요한 파일을 staged에서만 지움

    git rm --cached project/Build.scala


재 커밋 후 rebase 계속

    git commit --amend

    git rebase --continue


특정 commit에 파일을 추가하고 수정커밋 

    git add project/Build.scala

    git commit --amend


rebase 계속

    git rebase --continue



유의점

이미 최신 코드들을 중앙저장소로 넣은 상태라면

git push --force 명령어로 넣어야 하는데, 이런경우 수 많은 사람들에게 불편을 끼칠 수 있습니다.

(모든 사람에게 I'm so sorry but I'm allergy! 라고 말을 해야 하는 상황)

견뎌낼 수 있는 수준인지 확인할 필요가 있다. 안되면 아쉽지만 포기!


저작자 표시 비영리 동일 조건 변경 허락
신고