Rebase 활용해 Commit 합치기

Rebase Rebase는 한 branch에 있는 내용을 다른 branch에 병합하는 두가지 Git 유틸리티 중 하나 입니다. 다른 하나는 이미 모두가 사용하고 있는 git merge 입니다. merge는 항상 이후로 향하는 변경인 반면에, rebase는 git의 history를 다시 작성 하는 강력한 기능을 가지고 있습니다. Rebase는 manual과 interactive 이렇게 두 가지 메인 모드를 가지고 있습니다. 여러가지 역할이 가능 한 rebase 지만 이번 posting에서는 이미 커밋한 몇개의 커밋을 하나로 합치고 새로운 커밋 메시지를 남기는 용도로 사용 해 보겠습니다. 문제 커밋을 했는데 깜빡한게 있는 경우가 생겼습니다. 19 분 전에 커밋을 하자 마자 코드가 너무 지저분 하다는 생각이 ..

Development/Git 2021.11.03
Github / Gitlab SSH 공개 키 등록하기

Git CLI와 GUI 저는 MacOS에서 Github repository에 접근 할 때 Github Desktop을 사용 하고 있습니다. ​ Github Desktop의 완성도는 꽤나 괜찮은 편입니다. TypeScript로 작성 되어 있으며, Release Note를 확인해 보시면 거의 1주일에 한번 꼴로 꾸준히 업데이트가 됩니다. 심지어는 Microsoft에 인수된게 무색하게 발빠르게 Apple M1 칩셋에 대응도 했습니다. https://github.com/shiftkey/desktop/ Linux 버전의 Fork도 있어서 한번 테스트 해 보려 합니다. 이렇게 빠르게 치고 올라온 배경에는 Github Desktop이 완전한 Open Source 라는 강점이 있습니다. 반면 atlassian의 Sou..

Development/Git 2021.09.25
Sourcetree 에서 잘못된 비밀번호로 저장소 접근 안될때 해결방법

원인 소스트리에서는 한번 입력된 비밀번호가 잘못 되어도 절대 다시 입력하라고 하지 않고, 계속해서 비밀번호가 틀렸다는 메시지만 주구 장창 띄웁니다. 심지어 8월 13일 부로 Github에서는 password authentication을 공식적으로 제거하고는 personal access token 만을 사용하도록 정책을 변경 했는데요. 이미 오래전 부터 경고해왔기 때문에 갑작스러운 일은 아닙니다. ​ 하지만 Sourcetree에서는 인증에 실패하였을때 새로 비밀번호를 입력하게끔 해주지 않기 때문에 대책이 필요합니다. 예전에도 팀원 분중 한분이 소스트리에 Gitub 비밀번호를 잘못 입력했다가 로그인 되지 않아서 지웠는데도 계속해서 비밀번호 입력하라는 창은 뜨지 않고 인증 실패만 나오니까, 구글에 "소스트리 ..

Development/Git 2021.08.24
Github REST API 요청 한도 늘리기

API rate limit exceeded for 58.121.244.176. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details 어플리케이션에 위에 보이는 기능을 추가했습니다. 문제는 제가 on input으로 요청이 걸리도록 했더니.. 순식간에 403 에러를 뿜으며 작동이 안되기 시작했습니다. 알고보니 시간당 겨우 60회의 요청만 가능합니다. 지금 알아서 다행이지 발표하다가 요청 60회 다 썼으면 큰일 날 뻔 했네요. 그래도 인증된 요청은 5,000 request 까지 해준다고 하니. 인증을 해야겠네요. Settings에 Develop..

Development/Git 2021.06.22
terminal 에서 해당 git branch 이름 표시하기

기본적으로 git 을 terminal 에서 활용할 때, 내가 어떤 branch 에서 작업중인지 알려면 git status 명령어를 사용합니다. 하지만, 이러면 확실하게 내가 어떤 branch 에서 작업중인지 헷갈려서 실수로 다른 사람들이 작업중인 branch 에 commit을 하는 불상사가 일어날 수도 있습니다. 그래서 확실하게 표시해 주는게 좋은데요, Zsh에는 vcs_info 라는 프레임워크가 포함돼 있다고 합니다. ~/.zshrc 파일을 열어서 수정을 해줍니다. 저는 보통 vim 에디터를 이용합니다. autoload -Uz vcs_info precmd_vcs_info() { vcs_info } precmd_functions+=( precmd_vcs_info ) setopt prompt_subst R..

Development/Git 2021.03.23