개인용 서버로 이것저것 해보려고 서브컴을 조립했다. 가장먼저 ssh접속을 시도했는데, 당연하게도 서버를 먼저 설치해야 하더라. 설치하고 실행하는 방법은 다음과 같다. systemctl은 systemd를 통해 실행되는 백그라운드 서비스를 관리하는 명령어라고 한다. 위와같이 enable을 수행하면, 부팅시 자동으로 서비스가 실행되도록 해준다. 아직은 외부접근이 안되니 상관은 없지만, 나중에라도 보안문제가 있을 수 있으니 최대한 노출을 피하기 위해서 더 읽기
PYTHON : Closure
함수 내부에서 정의된 함수. 외부 함수의 변수에 접근 가능. 외부 함수가 실행을 마쳐서 접근이 불가능해진 상황에서 이 내부함수를 통해 접근 가능. ex) closure 간단히 말하면, closure를 이용해서 (외부함수의 변수) + (내부함수) 세트만 유지가 가능하다. 이런걸 어디다 쓸까 싶은데, 다음과 같이 클래스로 구현하고 사용도 멤버함수를 불러야 하는 경우에 좀 더 간편히 더 읽기
git 알아보기 #8 : github 사용하기
지금까지는 가장 기본적인 기능들에 집중해서 remote라고 해봤자 로컬 폴더에 생성해 사용해 봤었다. 실제로 팀단위로가거나 규모가 큰 경우, github, gitlab, Bitbucket 등의 서비스를 사용하거나 직접 셀프호스팅하는 서비스를 사용하기도 한다. 셀프호스팅에는 오픈소스로 제공되는 Gitea, Forgejo 등이 있다. Forgejo는 Gitea가 상용 서비스 회사가 되자, 생겨난 것으로 보인다. 이러나 저러나 예전부터 막강한 기능과 제일 더 읽기
git 알아보기 #7 : git remote / push / pull / fetch/ clone
공동작업용 중앙 저장소 생성. 우선 공동작업용 폴더를 하나 만들었다. 그리고 그 안에서 –bare 옵션을 주고 git을 초기화하여 repository를 생성한다. –bare옵션을 주면 로컬작업이 안되고 git repository 자체만 존재한다. –bare 옵션으로 공동 작업용 git repository를 만드는 경우, 폴더명을 “.git”으로 끝내는게 관례라고 한다. 초기화 후, 파일들을 보면, git init 로 생성했을 때 보이는 더 읽기
git 알아보기 #6 : git merge/rebase
git merge 앞에서 특정 기능을 개발하거나 테스트 하기위해 branch를 생성해서 작업을 했다고 생각해보자. 기능을 다 구현하고나면, 이걸 main 브랜치에 반영해야 다른사람들이 사용하거나 릴리즈시에 반영이 될 것이다. 또는, 별도의 버전으로 관리한다고 해도 main 브랜치에서 진행된 작업 내용을 이 브랜치에 적용하고 싶을 것이다. 이렇게 하나의 branch의 변경사항들을 다른 branch에 병합시키고 싶을 때 더 읽기