티스토리

Localslave
검색하기

블로그 홈

Localslave

fortenet.tistory.com/m

localslave 님의 블로그입니다.

구독자
1
방명록 방문하기

주요 글 목록

  • 깃을 초기화 하고 삭제하기 참조: https://createhb21.tistory.com/8Git은 명령어 단위로 이루어진 간단한 프로그램이다.터미널에서 Git을 이용하는 연습을 해보도록 하자.Git에 관한 Command들은 모두git 다음에 명령어 형식으로 이루어져 있다. 예를 들어 git config 라면, configuration에 관련된 명령어를 수행할 수 있고git commit 혹은 git add 이런 식으로 'git' 다음에 '명령어'의 형식으로 이루어져 있다.또한 보통은 'git 명령어' 다음에 옵션들이 여러가지가 있어서 같은 명령어를 수행하더라도 어떤 옵션을 붙이냐에 따라서 조금씩 다른 방식으로 진행할 수 있다.git add -option따라서 어떤 일을 수행할지에 따라서 git 다음에 add, status, dif.. 공감수 0 댓글수 0 2024. 11. 4.
  • git pull - unable to update local ref 참조: https://uncle-bae.blogspot.com/2017/02/git-pull.htmlGit을 이용하여 pull을 수행할때 다음과 같은 오류가 날 수 있다.오류상황 :error: unable to resolve reference refs/remotes/origin/xxxx_file: No such file or directoryFrom git+ssh://remoteserver/~/test ! [new branch] xxxx_file -> origin/xxxx_file (unable to update local ref)error: unable to resolve reference refs/remotes/origin/split-css: No such file or directory .. 공감수 0 댓글수 0 2024. 10. 4.
  • Prisma - 객체 간의 관계 설정, 1:N, 1:1, N:M 참조: https://dodote10.tistory.com/624 Prisma 객체간의 관계 설정이번 게시물에서는 DB에서 자주 사용되고 블로그를 통해 많이 소개되었던  1대다(1:N), 1대1(1:1), 다대다(N:M) 관계들을 Prisma는 어떤 인터페이스를 사용해서 이를 설정할 수 있도록 하는지 알아볼것이다.1 : N (One to Many Relations) 이 관계의 경우는 테이블 A의 하나의 레코드는 테이블 B의 여러 레코드와 관련되어 있다. 다만 테이블 B는 하나의 A의 레코드하고만 연결된다. 위 그림에서 와 같이 사용자는 여러번 주문을 할수 있다. 하지만 주문은 주문자로써의 사용자정보를 하나만 가진다.   1 : 1 (One to One Relations)한명의 사용자는 하나의 프로필만 가.. 공감수 0 댓글수 0 2024. 9. 26.
  • git cannot lock, cannot create 에러 참조: https://code-anthropoid.tistory.com/223 요즘 브랜치를 활용하는 법을 익히려고 이렇게 저렇게 사용해보고 있다그러던 중에 브랜치를 만드는에 다음과 같은 에러가 발생했다fatal: cannot lock ref 'refs/heads/...' cannot create 'refs/heads/...'뭐지..? 평소같이 만들었는데 왜 안되는 걸까여기저기 검색하다 보니 내 경우에는 브랜치 네이밍 문제였는데브랜치 명을 test로 할 경우 다음과 같은 경로에 저장된다 refs/heads/testtest에서 작업을 하다가 여기서 파생되는 작업을 하고싶어서 브랜치를 또 만드는데그 이름을 test의 파생임을 나타내기 위해 하위 경로로 지정한다 test/something하지만 이런 네이밍을 .. 공감수 2 댓글수 0 2024. 9. 25.
  • JS에서 Enum-like한 상수 만들기. class CONSTANTS { static BEST_ITEM_PAGE_SIZE = Object.freeze({ PC: 4, TABLET: 2, MOBILE: 1, }); static BUNDLE_SIZE = 5; static ITEM_PAGE_SIZE = Object.freeze({ PC: 10, TABLET: 6, MOBILE: 4, }); static SORT_ORDER = Object.freeze({ RECENT: 'recent', // FAVORITE: 'favorite' }); static SORT_ORDER_MSG = Object.freeze({ [CONSTANTS.SORT_ORDER.RECENT]: '최신순', // [th.. 공감수 0 댓글수 0 2024. 9. 20.
  • Git - Already exists in the index 문제 참조: https://blog.naver.com/bestmic/220939712681 프로젝트 진행시 Submodule을 잘못된 경로에 Git을 땡겨왔다. 파인더에서 직접 삭제하고 다시 땡기려고 했더니.. "already exists in the index" 터미널에서도 지워도 똑같다.검색 고고.캐쉬가 남아서란다. 캐쉬를 지우자.1. 캐쉬가 남아있는지 확인git ls-files --stage 지우고자하는 폴더경로]2. 아래와 같이 캐시가 메모리에 남아있는게 보인당. 저런..160000 c29ead11ca8173936908d9130d57ac325e0a0b83 0 [폴더경로]3. 캐시삭제git rm --cached 지우고자하는 폴더경로다시 땡겨오면 잘 땡겨와짐.출처http://stackoverflow.com.. 공감수 0 댓글수 0 2024. 9. 9.
  • Git Submodule 참조: https://hudi.blog/git-submodule/ 서브 모듈이란Git의 레포지토리 하위에 다른 저장소를 관리하기 위한 도구이다. 이때 상위 레포지토리를 슈퍼 프로젝트(superproject), 하위 레포지토리를 서브 모듈(submodule)이라고 부른다. (혹은 부모 저장소, 자식 저장소라고 부르기도 한다.) 서브모듈을 사용하면 특정한 Git 레포지토리를 다른 레포지토리의 하위 디렉토리로 사용할 수 있다.슈퍼 프로젝트에 서브 모듈을 추가하면, 슈퍼 프로젝트가 하위 모듈의 특정 커밋을 가리키게 된다. 그리고 슈퍼 프로젝트는 현재 가리키고 있는 하위 모듈의 파일을 슈퍼 프로젝트에 추가하게 된다.직접 서브 모듈 기능을 사용해보며 익혀보자. 레포지토리 생성먼저 Github에 super-repos.. 공감수 1 댓글수 0 2024. 9. 9.
  • Git Alias 참조: https://goddaehee.tistory.com/273 git은 수많은 명령어를 가지고 있고, 명령어들의 복잡한 옵션들을 일일이 기억하긴 매우 어렵고 번거롭다. Bash등 쉘에서 Alias 기능을 지원하는 것처럼 git도 Alias를 통해 명령어들을 간단하게 단축키로 지정하여 사용할 수 있다. ▶ 1. Git  Alias 지정 하기 - 2가지 방법으로 지정 가능 하다. 1.1 Git Commands로 설정하기 - git config 를 사용하여 각 명령의 Alias을 쉽게 만들 수 있다.ex) # git config --global alias.st 'status -s'   - 다음 Commands로 삭제도 가능하다ex) git config --global --unset alias.st 1.2.. 공감수 0 댓글수 0 2024. 9. 9.
  • Object에서 array.map을 이용할 방법 객체 내에서 array.map처럼 순회하면서 리턴을 내고 싶을때Object.entries(obj).map( [key, value] => {...} )이런 형식으로 entries 메소드로 배열을 리턴받아서 배열에서 사용할 수 있다. 공감수 1 댓글수 0 2024. 8. 30.
  • js 파일 인클루드를 위한 방법 (function () { /** JS 파일을 인클루드한다. * @param {string} file file path */ function includeJS(file) { var script = document.createElement("script"); script.src = file; script.type = "text/javascript"; script.defer = true; document.getElementsByTagName("head").item(0).appendChild(script); } includeJS("파일명"); })(); IIFE를 통해 익명으로 자동실행되도록 설정, 이 코드를 마스터가 되는 js파일에 넣어두면 된다. 공감수 0 댓글수 0 2022. 2. 4.
  • cookie CRUD를 위한 유저 펑션 // 쿠키 저장 var setCookie = function(name, value, day) { var date = new Date(); date.setTime(date.getTime() + day * 60 * 60 * 24 * 1000); document.cookie = name + '=' + value + ';expires=' + date.toUTCString() + ';path=/'; }; 1# : 저장 함수, cookie 명, cookie 값, 기간을 파라미터로 받는다. 2# : Date 객체 생성 3# : 파라미터로 받은 day(기간)을 date 객체에 담는다. 1/1000 초 임으로 60*60*24*1000 으로 1일을 만든다. 4# : cookie를 셋팅한다. // 쿠키 조회 var getC.. 공감수 0 댓글수 0 2022. 2. 4.
  • camel <-> snake /** camel case -> snake case * @param string $input * @return string */ function camelToSnake(string $input) { return strtoupper(preg_replace('/(? 공감수 0 댓글수 0 2022. 2. 3.
  • [vscode] 영역 접고 펴기 Ctrl + Shift + [ : 현재 영역 접시 Ctrl + Shift + ] : 현재 영역 펼치기 Ctrl + K + 0(숫자) : 전체 접기 Ctrl + K + J : 전체 펼치기 공감수 0 댓글수 0 2022. 2. 3.
  • 조건부 처리에 관하여 SQL에서는 조건에 따라 값을 처리할 수 있다. 이는 다른 언어들의 if, elseif, else문과 거의 동일하다. // if 함수 if(조건, true시 값, false시 값) // case문 CASE WHEN 조건1 then 결과1 WHEN 조건2 then 결과2 //... ELSE 기본값 END // case문 축약형(= 비교 밖에 못한다.) CASE 컬럼명 WHEN 비교값1 then 결과1 //... ELSE 기본값 END 이를 이용해서 입력값이 NULL인 경우 입력하지 않고 값을 유지하도록 update문을 구성할 수 있다. update 테이블명 set 컬럼명 = if(입력값 is NULL, 컬럼명, 입력값) // where문 등등 혹은 update 테이블명 set 컬럼명 = case when .. 공감수 0 댓글수 0 2022. 1. 30.
  • SQL에서 NULL 체크에 관해 IS NULL 조건은 다음과 같다. SELECT "필드명" FROM "테이블명" WHERE "필드명" IS NULL IS NULL 조건의 반대를 조회할 경우는 아래와 같다. SELECT "필드명" FROM "테이블명" WHERE "필드명" IS NOT NULL 해당하는 값이 NULL일 경우 대체할 값을 제공하는 방법은 COALESCE(A, B, ...) //먼저 주어진 인자부터 NULL체크를 진행, NULL이 아닌 첫 인자를 반환한다. 공감수 0 댓글수 0 2022. 1. 30.
  • enter 입력시의 이벤트에 관해 [ onKeyPress ] 키보드에서 키를 눌렀을때 발생하는 이벤트 핸들러 onKeyDown과는 달리 키보드를 누르는 순간뿐 아니라 누르고 있는 동안에도 이벤트가 발생된다. 예1) function todo() { //해야 할 일 } 공감수 0 댓글수 0 2022. 1. 30.
  • 파일 업로드 템플릿 uploadFile($_FILES['proFile'], ''); switch ($data) { case SUCCESS: $result->resultCode = "SUCCESS"; break; # 성공 case NO_FILE: $result->resultCode = "NO_FILE"; break; # 파일 없음 default: $result->resultCode = "ERROR_ETC"; # 실패 }} catch (Exception $e) { // echo "code: " . $e->getCode(); // $result->errorMsg = $e->getMessage(); $result->resultCode = "SYS_ERROR"; # 서.. 공감수 0 댓글수 0 2022. 1. 27.
  • CURL을 통한 GET, POST 요청 보내는 법 CURLOPT_RETURNTRANSFER를 true로 세팅하지 않으면 코드가 변수에 담기지 않고 화면에 뿌려진다. 사용 가능한 데이터 타입은 배열, 객체 타입이다. 가능하면 JSON을 사용하자  참조PHP cURL POST 전송 사용법 예제 :: KiwiSoft (tistory.com) curl을 이용하여 post, get 방식 으로 데이터 전송하기curl을 이용하여 post, get 방식 으로 데이터 전송하기 GET과 POST에 대해 간단하게 논하겠습니다. GET은 눈에 보이는것, POST는 눈에 보이지 않는것이라 생각하면 됩니다. 즉 GET은 주소창에 http://itfresh.titfresh.tistory.comcurl을 이용하여 post, get 방식 으로 데이터 전송하기 (tistory.com).. 공감수 0 댓글수 0 2022. 1. 26.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.