Log Stash

as an Industrial Personnel

Git 3

TIL: git --fixup, --autosquash

요즘 계속 git이야기만 쓰게 되는것 같네. 요즘 회사 게임 내부 구조 관련된것만 보니까 어쩔 수 없긴 한데.. tl;dr git commit --fixup= 위 명령으로 현재 커밋을 하면서 특정 다른 커밋에 fixup할 것이라고 마킹을 해 놓고, git rebase -i --autosquash 인터랙티브 모드 rebase를 --autosquash 옵션으로 열면 fixup하고 싶었던 일을 알아서 해준다. todo를 보면, 달라 붙어야 하는 커밋은 자동으로 달라 붙을 커밋 아래줄로 옮겨져 있고, 'pick'대신에 'fixup'이 작성되어 있다. 물론 리베이스를 하는 커밋 범위내에 달라 붙을 커밋이 포함되어 있어야 함. (fixup 마킹해놓은 커밋은 HEAD로 부터 7커밋 떨어져 있는데 HEAD~3을 지정해..

Note 2017.06.23

TIL: git rebase의 --autostash옵션은 자동으로 stash를 해준다

사실 예전부터 알고 있던거긴 하지만...feature브랜치 위에서 작업하다보면 팀원 전체가 공유하는 공통 브랜치(develop)의 내용이 바뀌어서 커밋 내용을 따라 잡아야 할 일이 빈번하게 생긴다. 이 때 나는 머지 커밋이 생기는게 보기 싫어서 merge 대신에 rebase를 사용하는데, merge는 충돌만 없으면 별 말 없는 반면에 rebase는 마지막 커밋 이후에 커밋하지 않은 작업물이 남아 있으면 걔네들 때문에 리베이스 못 하겠으니 먼저 커밋하거나 stash해서 치워두라고 말하고 종료한다.그래서 지금까지는 git stash git rebase develop git stash pop 이렇게 rebase 전후로 stash push, pop을 해 가면서 썼었다. 이게 또 문제가 있는게 stash pop하..

Note 2017.05.21