본문 바로가기

IT라이프47

[git] 기존 작업 브랜치 내용을 부분적으로 새 브랜치로 이사가기 너무 conflict 가 많이 나거나 불필요한 파일이 많이 들어와서 새로운 브랜치로 다시 재시작하고 싶을때 // main 상태에서 git switch main // 기존 작업 브랜치가 old git switch -c old // 이사가고 싶은 브랜치 new git switch -c new old 브랜치의 변경사항을 가져올 폴더로 이동합니다 이때 --no-commit 옵션은 병합을 수행하더라도 커밋을 하지 않고 병합 결과를 스테이징 영역에 추가하도록 합니다. --no-ff 옵션은 fast-forward 병합을 하지 않도록 합니다. git merge --no-commit --no-ff old 여기까지 실행해서 만약 모든 파일이 이미 스테이징 영역에 있다면 불필요한 파일까지 커밋을 해야하기 때문에 다시 내린다.. 2023. 3. 24.
프론트엔드 코딩 1. 같은 목적을 가진 코드로 구성하여 응집도를 높이기 - 세부사항을 전개하지 말고 따로 코드로 빼두고 세부구현을 해놓는다 - 코드가 길어지더라도 따로 코드로 빼놓는 것이 메인 흐름을 이해하는데 유리하다 2. 함수는 하나의 역할만 하도록 제대로 나누기 - 함수는 단일책임만 가지도록 나누기 3. 함수의 세부구현 단계를 추상화를 통해서 통제하기 - 컴포넌트를 하나 만들어서 대강 어떤 일을 하는지 알수 있게 구현하기 4. 비동기처리에서 성공과 에러 처리하기 - async await 로 성공인 경우만 작성하여 무슨 일을 하는지 알기쉽게 한다 - try catch 를 쓰지않고 await fun 안에서 에러처리를 하도록 맡긴다. 2022. 12. 9.
[Javascript] function vs arrow function foo(v) { return v * 2 } caller: null arguments: null const boo = (v => v * 2) arrow function 은 caller, arguments 에 접근불가 Function.caller deprecated 브라우저에서 사용할 수 없는 가능성 높음 caller프로퍼티는 해당 함수를 실행시킨 함수를 반환합니다. strict, async, generator 함수에서 실행시켰다면 null 을 반환합니다. Function.arguments deprecated 브라우저에서 사용할 수 없는 가능성 높음 함수에 전달된 파라미터에 대응하는 오브젝트입니다. strict 에서 사용불가. 2022. 11. 3.
Git merge 에 관한 고민 git 를 사용해서 팀원들과 함께 작업을 하다보면 내 작업 브랜치가 몇주전에 만든 것인데도 불구하고, 그 사이에 다른 팀원들이 수십개의 파일을 먼저 main 브랜치에 머지하는 상황이 있을 수 있다. 보통 github 에서 아래와 같은 세 가지 경우로 처리할 수 있는데, 1. 첫번째 방법, github 에서 내 작업 브랜치에 대해서 에러나 특이사항은 없으니 그냥 PR을 머지해버리고 끝낸다. - 이 방법의 장점은 내 게으름을 인정할 수 있다. 그러나 내 파일이 들어간 후 빌드하는 과정에서 실패하면 hotfix 로 대응해야 하는 경우가 생긴다. 2. 두번째 방법, 내 작업 브랜치에 main(master)를 merge 하고 PR 을 머지한다. - 나쁘지 않은 방법이다. 단점은 실제 main 에 들어가는 순서가 .. 2022. 10. 25.
반응형