Author Archives: JS

[GIT]6. COMMIT하다가 실수 했을때

오늘은 개발하다가 잘못된 소스를 올렸을때 복구 하는 방법을 알아보겠습니다. git revert / git reset 이 두 가지 명령어입니다. 둘 다 원격 저장소에 push하기 전에 사용 가능한 방법들입니다. 만약 푸시를 했다면 수정해서 다시 push해야 합니다. 그리고 이 두가지 방법중에서 git reset은 다른 개발자들과 충돌이 발생할수 있기때문에 혼자 하는 개인 프로젝트가 아니라면 사용 안하는걸 추천합니다. git revert

Read More

[GIT]5. branch 만들고 머지하기

개발 하면서 필요한 기능을 추가 하거나 수정 해야 할경우 기존의 main 혹은 master 브랜치에서 계속 커밋을 해도 되지만 혹시나 잘못된 코드를 커밋하거 기존의 코드를 망치면 어떻게 할까요? 이런 걱정없이 안전하게 새로운 기능을 추가하는 방법이 새로운 branch를 만들어서 머지하는 것입니다. 브랜치 만들기 git branch branchname git switch branchname 1번째 라인의 코드를 입력하면 새로운 브랜치가 만들어집니다. 2번째

Read More

[GIT]4. git stash 임시보관하기

코드를 짜다보면 지금 작업하던 코드를 버리기는 아깝고 잠시 다른 곳에 보관하고 싶을 때가 있습니다. 이럴때 사용하는 코드가 git stash입니다. 지난시간에 실습했던 파일 a서 부터 시작하겠습니다. command a 만들었음 hello world 3줄에 hello world 라는 것을 적었습니다. git stash git stash라고만 하면 이게 어떤 작업을 한건지 구분하기 어려우니 메모를 남기면 더 좋을거 같습니다. git stash save

Read More

[Git]3. difftool 이전 버전과 현제 상태 비교하기

오늘은 이전 보전과 현제의 버전의 차이를 어떻게 비교할수 있는지 다루어 보겠습니다. command git diff commit-id1 [dommit-id2] git difftool commit-id1 [dommit-id2] 두 명령어의 차이는 diff, difftool로서 뒤에 tool더 붙는다는 것이다. 첫번째 diff 명령어의 결과는 아래와 같다. 간단히 살펴 볼수는 있겠지만 이걸로 보기는 쉽지 않을거 같다. commit-id를 알아야 현제 버전과의 차이를 알수 있기에 지난 시간에 배운 git

Read More

[Git]2.git add, git commit, git restore 사용법

앞에서 git 파일의 버전을 관리하는 툴이라고 했습니다. 개발하다가 하루 전이나 이전 상태로 돌아갈 방법은 뭘까요? 버전 관리 툴이 없다면 버전마다 파일을 복사해서 관리해야 할 겁니다. 다른 방법은 깃을 사용하는 것이죠. 오늘은 깃에서 어떻게 버전을 저장하는지 다루도록 하겠습니다.   먼저 앞으로 실습할 작업 환경을 만들도록 하겠습니다. 저는 git-command이라는 이름으로 폴더를 하나 만들겠습니다. 지난번에 설치한 vscode로 해당

Read More

[GIT]1. 설치법

git은 파일을 버전관리 하는 툴로 널리 쓰이고 있습니다. 이번 연제에서는 이 깃을 어떻게 사용하는지 명령어와 제가 주로 쓰는 툴인 소스트리를 사용해서 알려드리고자 합니다. 최종적으로는 이 연제를 다 보시면 깃 사용해서 협업하는데 문제가 없도로 초심자 및 중급자의 가이드가 되도록 하고자 합니다. 제가 예전에 스터디했던 Learn Git Branshing. 에서 많이 배웠습니다. 지금도 유용하니 참고 하시면 좋을거 같습니다.

Read More

[Node.js] socket.io를 이용한 채팅 구현하기

node.js환경에서 socket.io를 이용해서 간단한 채팅 프로그램을 만드는 방법을 공유하겠습니다. 라이브러리 설치 npm init으로 package.json 파일을 만듭니다. express, socket.io가 필요합니다. npm i express socket.io를 해서 설치해 줍니다. 위처럼 dependencies에 설치한 라이브러리들이 존재하면 됩니다. 설치된 라이브러리는 node_modules 폴더에 있습니다. chat.html 엔터 혹은 전송 버튼을 클릭하면 name, room, msg, to의 아이디를 가지고 있는 인풋값을 서버로 전송합니다. 그리고 서버에서

Read More

[node.js] 노드에서 파이선 실행하는 방법

# print.py 변수 2개를 받아서 프린트하는 함수를 만들었습니다. 이방법은 노드에서 변수를 어떻게 파이선에 전달 알수 있습니다. # connectPython.js node의 기본 라이브러리인 child_process를 사용해서 파이선을 호출할수 있다.spawn(“python3”, [“print.py”, “js”, “itjs”]);을 보면 알수 있듯이 실행하는 파일을 선택하고 넘겨줄 파라미터를 입력하면 된다.

repository 명명 규칙(chatgpt에게 물어봤다)

깃에 프로젝트 만들때 마다 항상 명명 규칙이 항상 헷갈리고 이렇게 만드는게 맞는지 의구심이 들어서 gpt에게 물어봤다. 아래의 다변을 참고 해서 이름을 지으면 좋을거 같다. 결론부터 말하지면 소문자-소문자 이런식으로 너무 길지 않게 의미가 있는 이름으로 작명하면된다고 한다. 그동한 대부분 카멜케이스로 했는데… 고쳐야 겠다 ㅎㅎ   Answer 정확한 규칙은 없지만, 보통 프로그램 이름과 Git 저장소 이름을 결정할

Read More

[javascript]call, apply, bind 정리

배열같지만 배열이 아닌 유사 배열들을 배열함수 적용 하는 방법을 위의 코드에서 정리해 보았습니다. document.querySelectorAll(‘div’)의 결과들이 흔이 유사 배열이라고 합니다. 위에처럼 let a = {0: “aaa”, 1: “bbbb”} 이런 식으로  만들어진 객제인데 접근할때 a[0], a[1]이렇게 값을 가져올수 있어서 배열로 착각하곤 하지만 막상 a.forEach, a.filter, a.map 등의 배열함수를 사용할려고 할때 오류가 발생합니다. 그럴때는 위에 정리해둔 call, apply등을 사용하여

Read More