기술노트

설치
dev.mysql.com/downloads/windows/installer/8.0.html MySQL :: Download MySQL Installer Select Operating System: Select Operating System… Microsoft Windows Select OS Version: All Windows (x86, 32-bit) Windows (x86, 32-bit), MSI Installer 8.0.23 2.4M (mysql-installer-web-community-8.0.23.0.msi) MD5: a3af6d91f93e046452b38a1e2589534c | Signatu dev.mysql.com 여기 들어가서 아래쪽껄로 설치 하단에 No thanks클릭 Developer D..

Oracle XE 개발환경
www.oracle.com/database/technologies/xe-downloads.html 위 사이트에 들어간다. 둘 중에 자신의 운영체제에 맞게 선택한다. 필자는 windows 이므로 아래를 선택했다. 다운로드 하려면 회원가입 하라고 하는데 회원가입 해줍니다. 다운로드 후 압축을 풀고 setup을 클릭 다음 경로 설정해준다. 비밀번호 쳐준다. 설치 될 때 까지 기다린다. 생각보다 오래걸린다. 설치가 완료되면 여기에 services.msc 치고 이 부분을 수동으로 바꿔준다. default로 자동으로 되어있을텐데 평상시에도 oracle 데이터베이스를 사용할거라면 냅두고 아니라면 수동으로 하면된다. 다음은 데이터베이스에서 많이쓰이는 프로그램인 Toad를 설치할 것이다. 근데 Toad는 유료버전이라 T..

revert로 특정커밋 하나 되돌리기
일단 main을 checkout한 상태에서 revertest1을 만든다. 이런식으로 revertest1을 만들고 revertest1을 chekout한 상태에서 일단 충돌방지를 위해 3개의 새 파일을만들어서 커밋한다고 가정하자. 해당 소스 파일에는 각각 revert1 revert2 revert3 이렇게 내용이 적혀있다고 하자. revert2가 적힌 파일만 커밋 되돌리기 하고싶다면 그냥 revert2가 적힌 파일을 커밋한 것을 선택하고 - 우클릭 - 커밋되돌리기 하면 된다. 웬만하면 근데 충돌을 방지하기위해 최신순서대로 revert해주는 것이 좋다.

Rebase를 사용해서 tree 정리
rebase는 merge와 비슷하다. rebase는 두 branch를 합칠 때 사용한다. SourceTree에서는 "재배치"라는 명령이다. 장점 : 커밋 히스토리가 깔끔해짐 단점 : 잘못하면 위험. github에 올라갔거나 협업을 하고 있는 경우에는 매우 위험하다. rebase라는 branch를 만들어보자. 이렇게 대충 내용써주고 스테이지에 올리고 커밋도해준다. rebase를 checkout한 상태에서 main이 있는곳에 branch를 또 새로 만들것이다. etc에는 rebase 내용도 없다. 그러면 여기에 이렇게 쓰고 스테이지에 올리고 커밋을 해주자. 이렇게 두 갈래가 생긴다. 이제 merge를 해보자. etc와 rebase 둘 중에 하나만 fast forward가 가능하다. 일단 main을 check..

stash를 이용한 작업 내용 저장
자 이상태에서 test라는 branch를 만들어보자. 이렇게 브랜치를 만들어보자. 이상태에서 커밋을 아무거나 해보겠다. 뭐 이런 식으로 내용을 추가했다. commit하지 않은 변경사항이 생겼습니다. 스테이지에 올리고 commit해줍니다. 이렇게 써주고 커밋합니다. 이제 만약에 이렇게 적었다고 가정해보자. 커밋하지 않은 변경사항이 생겼다. 마지막 커밋(test 커밋) 과 현재 작업 디렉토리의 내용이 다르기 때문에 이런게 생긴 것이다. 이상태에서 main을 checkout하면 에러가 뜬다. 이 에러는 해당 프로그램에 버그가 생겨서 급하게 수정해야하는 상황에 흔히 볼 수 있다. 이러한 상황을 해결하려면 첫째, branch1에서 임시커밋을 하기 둘째, branch2에서 checkout을 하고 볼 일 보기 셋째,..

Revert를 이용해서 여러가지 commit을 되돌리기
revert로 쉽게 커밋을 되돌릴 수 있고 revert로 되돌리면 이전 커밋이 남기 때문에 좋다. SourceTree 에서는 커밋 선택 - 우클릭 - 커밋 되돌리기를 통해 Revert를 할 수 있었다. 이때 되돌아가고 싶은 위치를 선택해서 되돌아가는 것이 아니라, 되돌리고 싶은 커밋을 되돌리는 것이다. 즉 내가 파란색으로 선택한 커밋으로 되돌리고 싶다고해서 파란색으로 선택한 커밋을 우클릭 - 커밋 되돌리기를 하는 것이 아니라 이 친구를 우클릭해서 커밋되돌리기를 하는 것이다. revert로 여러 커밋을 되돌리는 법? 최신부터 순서대로 revert를 반복 적용하면 된다. main checkout한 상태에서 main을 클릭하고 브랜치를 만든다. 그리고 test1으로 파일을 하나 만들겠다. 내용은 이렇게 추가하..

revert를 사용하여 commit 되돌리기
main을 checkout한 상태에서 이런식으로 #revert 되돌리기 용 이렇게 적어보자. 변경사항 stage에 올려주자. 머 이런식으로 적고 commit 해준다. 이렇게 만들어졌다. 그런데 이걸 되돌리고 싶다. 즉 origin/main이 있는 시점으로 되돌아가고 싶다. 그러면? 즉 커밋 0ccc877번을 되돌리고 싶다. 그러면? main을 checkout한 상태에서 main을 클릭하고 오른쪽마우스를 클릭한다. 커밋 되돌리기를 클릭한다. 예 이렇게 위에 커밋이 하나 더생긴다. 다시 python으로 가보면? 아까 적었던게 사라져있다. 이 상태에서 다시 아까 #revert 되돌리기 용 이라고 적은 상태로 돌아가고 싶다면 reset방식으로 되돌아간다. reset연습 부분을 클릭하고 오른쪽마우스클릭해서 '이 ..

알고리즘(1)
알고리즘이란? 주어진 문제를 논리적으로 해결하기 위해 필요한 절차, 방법, 명령어들을 모아놓은 것. 쉽게말해 문제를 해결할건데 이를 더 효율적으로 해결하는 것이 알고리즘이라 할 수 있겠다. 컴퓨터 알고리즘 프로그램이 어떻게 행동할지를 결정. 즉, 컴퓨터가 어떤 문제를 해결하기 위해서 컴퓨터가 이해할 수 있는 방식으로 정리되어있는 해결방법 우리가 코딩하기 편한 방식이 아니라 컴퓨터가 처리하기 편한 방식. ex) 유튜브에서 조회수, 구독, 좋아요 순이 아니라 개개인이 선호하는 것에 맞춰서 영상을 골라주는가? 알고리즘의 필요성 점차 SW 개발의 진입장벽이 낮아지고 있는데, 이 때문에 알고리즘 실력이 점차 중요해짐. SW 개발은 점점 대중화 되고 있지만, 알고리즘 실력은 순수 개개인의 역량에 달라지기 때문. 따..