분류 전체보기
Git의 파일 상태 구분법
Git의 파일 상태 구분법
2020.04.09Tracking Git이 파일의 변동 사항을 알려주며 파일을 추적하는 상태이다. 추적 중인 파일은 다시 3가지의 상태로 구별해서 우리에게 파일의 상태를 알려준다 Untracking Git이 신경 쓰지 않는 파일 상태이다. 처음에 새로운 파일을 넣었을 떄 그 파일은 Untrakcing 상태이다. git add [파일명] 명령어로 파일을 Track할 수 있다.
Source Tree 설치하는 법 + 사라진 Source Tree 찾기
Source Tree 설치하는 법 + 사라진 Source Tree 찾기
2020.04.09Source Tree를 설치하는 법과 설치하다가 막혔을 때의 해결법 1. Source Tree 홈페이지 접속 후 다운로드한 설치 파일을 실행 Source Tree 홈페이지: https://www.sourcetreeapp.com/ 2. Bitbucket 가입 Source Tree를 사용하려면 Bitbucket에 가입해야 합니다. 가입해줍시다. 3. 로그인 Bitbucket에 로그인하라는 인터넷 창이 열릴겁니다. 이 창이 자동으로 열리지 않으면 설치 프로그램 끄고 다시 시도해보세요. 방금 가입한 아이디로 로그인해줍시다. (이미 로그인되어 있다면 Skip) 4. Grant Access 로그인했다면 아래의 웹 페이지로 이동할겁니다. 이 과정에서 무한 로딩 버그에 걸려서 못 빠져나오곤 합니다... 해결법은 껐다 ..
[Compiler] 1. Lexical Analyzer :: 구현하기
[Compiler] 1. Lexical Analyzer :: 구현하기
2020.04.09* 2020/04/09 - [Programming/Compiler] - [Compiler] 1. Lexical Analyzer :: 동작하는 방식에서 이어지는 내용입니다. Lexical Analyzer를 구현해보자 무엇을 구현해야 할까? Lexical Analyzer는 input을 읽고 토큰으로 분류를 해서 Symbol Table을 만들어야 합니다. Token들의 Pattern 그 Pattern들을 인식하는 코드 Symbol Table 1. Token들의 Pattern은 어떻게 정의할까? 정규식(Regular Expression)을 사용하면 편합니다. 특정 문자열의 패턴을 간결하면서 정확하게 표현을 하게 해주는 좋은 도구입니다. 비교를 해봅시다. 식별자 Token의 Pattern을 글로 표현한 경우 식별..
[Compiler] 1. Lexical Analyzer :: 동작하는 방식
[Compiler] 1. Lexical Analyzer :: 동작하는 방식
2020.04.09* 2019/07/30 - [Programming/Compiler] - [Compiler] 1. Lexical Analyzer :: 소개와 용어 정리에서 이어지는 내용입니다. 지난번 글에서 말했던 개념을 빠르게 복습해봅시다 더보기 Token: (Token Name, 어떤 문자들을 대표하는 Symbol)와 (Token Value, 토큰의 구체적인 속성)의 쌍 (ex) "산술연산자(+, -, *, /, %)", "반복문(for, while)" Lexeme: 토큰들의 구체적인 예 (ex) "+" -> 산술연산자라는 토큰의 구체적인 예 Lexical Analyzer(Scanner)의 동작 방식에 대해 알아보자 Lexical Analyzer는 input으로 준 문자열을 읽어서 각각의 단어들이 무엇을 의미하는 단어..
[Quick Fix] WSL Powerline9k Theme 깨짐/이상하게 보이는 오류 해결법 :: Overflowing rPrompt on WSL
[Quick Fix] WSL Powerline9k Theme 깨짐/이상하게 보이는 오류 해결법 :: Overflowing rPrompt on WSL
2020.03.23WSL에서 Powerline9k나 Powerline10k 테마로 이쁘게 꾸며서 사용하려고 했다. 하지만 다음과 같이 창이 넘쳐흐르는 에러가 발생했고 그냥 나두기에는 너무 거슬렸다. 이 오류 말고도 아이콘 잘림 또는 깨짐, 오버플로우, 등이 있을 수 있다. 이 오류들은 전부 Double-Width Glyph때문에 발생하는 문제들이다. 원인 - Double-Width Glyph Double-Width Glyph: Monospace 폰트와 달리 두 개의 공간을 차지하는 문자 Ex) , ,... (아마 폰트에서 지원되지 않아서 안보일 수도 있다. 사진으로 바로 아래에 올렸으니 어떤 문자인지 확인해보자.) 문제를 일으키는 2칸 문자들의 예 Mac(iterm2)이나 다른 OS의 터미널 에뮬레이터에서는 잘 동작하..
Email Protocol 비교 :: POP3, IMAP, SMTP
Email Protocol 비교 :: POP3, IMAP, SMTP
2020.03.21이메일 Protocol을 검색하면 가장 먼저 POP3, IMAP, SMTP를 볼 수 있다. 이번 글에서는 이 3가지 Protocol을 소개해보겠다. 서버로부터 이메일을 가져오는 Protocol로 POP3 또는 IMAP를 쓰고 이메일을 보내는 Protocol로 SMTP가 쓰인다. 먼저 이메일을 가져오는 Protocol들에 대해 알아보자. Email 가져오기 - POP3, IMAP 흔히 이메일을 다른 곳에서 받아와서 보기 위한 방법으로 POP3 또는 IMAP 두 가지의 선택지를 준다. 그런데 지메일 설정에서는 POP3 Protocol은 "POP 다운로드", IMAP Protocol은 "IMAP 액세스"라고 표기했다. 둘 다 똑같이 내 이메일을 다른 기기에서 확인하기 위한 방법이데 왜 이렇게 미묘하게 다른 말..
Git Internals 정리 :: Git은 어떻게 동작할까?
Git Internals 정리 :: Git은 어떻게 동작할까?
2020.03.16Git의 내부 동작 방식Git은 복잡하고 처음에는 매뉴얼만으로 이해하긴 어려웠다...그리고 가끔씩 무슨 소리인지 모르겠는 경고문을 보여주곤 한다...나도 처음에 막 건들다가 아래와 같은 경고문을 보게 되면 정말 당황한 적이 있다. Detached Head?? Linked List의 헤드인가...? 왜 Head가 분리됐지...?Git의 문서를 보면 아직 이해가 안 되거나 아주 중요한 내용인지 모르고 그냥 읽고 넘어가버릴 때가 많다... 매뉴얼은 이해하기 어렵고 Git의 주의점까지 다 외워야 할까? ㅠㅠ나는 Pro Git의 마지막 장인 Git Internals(Git 내부 동작)를 읽으며 모든 막막함이 자연스럽게 해결되었다.[참고] Pro Git이란?Git의 교과서이다. 정리가 상세하게 되어있어서 웬만한 건..
졸업하기 전에 공부하고 싶은 것들
졸업하기 전에 공부하고 싶은 것들
2020.03.11배우면 배울수록 많은 분야들을 접해보고 싶어진다... 하지만 곧 졸업하면 더 많은 것들을 접하고 공부할 시간이 없을 것 같아서 슬프다 그래서 졸업 전에 내가 도전해보고 싶은 것들을 한번 정리해봤다. 1. 3D Modeling (blender) 2. 글 쓰는 법, 논문 쓰는 법, 잘 정리하는 법 3. 수학: 미분 방정식, 수치해석, 해석학, 정수론, 수리통계학 4. 자연계의 현상 시뮬레이션, Nature of Code를 읽으면서 나도 해보고 싶어졌당 5. 물리: 고전역학, 동역학, 파인만의 물리학 책 읽기 6. 기하 알고리즘 7. 디자인: 색감, 크기, 조화 등 여러 가지 디자인에 대해서 배우고 싶다.. 8. 강화학습을 이용한 앱 만들기 (Unity ML-Agent) 9. 누나랑 자바스크립트 심화 공부 1..
[리눅스] 간단한 리눅스 명령어들 정리
[리눅스] 간단한 리눅스 명령어들 정리
2020.03.08SSH openssh로 터미널에 접속한다. telnet과 달리 평문 통신을 하지 않고 보안이 되어있다. ssh -p 포트번호 아이디@호스트주소 보통 ssh와 동일한 포트로 ftp도 열어놓는다. logout 또는 exit 명령어로 로그아웃한다. SFTP 보안이 된 ftp이다. sftp -P 포트번호 아이디@호스트주소 대문자 P를 사용해서 포트번호를 지정하는 것을 주의하자. get을 하면 다운 put을 하면 업로드 bye를 하면 종료 SCP scp 명령어는 별도의 글을 작성했다. 2020/04/15 - [Programming/Linux] - [리눅스] scp 기본 사용법 List 파일을 모두 리스팅한다. ls 숨긴 파일과 권한까지 포함하여 한 줄씩 파일을 모두 리스팅한다. ls -al Recursive mo..
[C# 8.0] Nullable Reference Type이란?
[C# 8.0] Nullable Reference Type이란?
2020.02.29C# 8.0의 새로운 기능들 중 하나로 Nullable Reference Type(널 참조 형식)이 있다. https://docs.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-8#nullable-reference-types C# 8.0의 새로운 기능 - C# 가이드 C# 8.0의 새로운 기능을 살펴봅니다. docs.microsoft.com 이미 클래스와 같은 Reference Type은 null을 가질 수 있는데 굳이 Nullable 필요할까?라는 의문이 들어서 찾아봤다. Nullable Reference Type에 대해서 알아보자 1. Nullable Reference Type을 선언하려면 Nullable Value Type과 같이 Class명 우측에 물음..
.gitignore가 동작 안할 때 상황별로 해결하기
.gitignore가 동작 안할 때 상황별로 해결하기
2020.02.29.gitignore 파일을 나중에 추가를 해주거나 아니면 다른 실수를 하면 .gitignore에 있는 파일이 전부 untracked로 파일로 다 뜰 때가 있다. 무시된 파일을 다시 추적해야 할 수도 있고 추적하고 있는 파일을 다시 무시해야 줘야 할 때도 있다. 그때의 해결법을 상황별로 정리했다. gitignore 작성 실수로 인해 발생하는 문제의 3가지 패턴과 그 해결법 상황 1. 이미 모든 파일을 git이 추적중인 경우 상황 2. 이미 추적 중인 파일 몇 개만 무시하고 싶은 경우 상황 3. 반대로 .gitignore에 있었던 파일을 다시 추적하고 싶을 경우 상황 1. 이미 모든 파일을 git이 추적 중인 경우 주로 .gitignore를 뒤늦게 추가해줬거나 잘못된 .gitignore을 올리고 나중에 눈치..
DigitalOcean으로 네트워크 실습용 서버 만들기
DigitalOcean으로 네트워크 실습용 서버 만들기
2020.02.29DigtalOcean에서 실습용 서버 만들기 DigtalOcean: 서버를 만들 수 있는 사이트. 대학생이면 Github Student로 50달러를 교육용으로 제공받을 수 있다. 아니라도 https://m.do.co/c/01669a1b94dc 이 링크를 통해서 가입을 하면 100달러를 무료로 지급해준다. (가입자 이벤트: 나한테도 25달러가 온다고 한다.) Server란? 원격으로 조정 가능한 컴퓨터이다. 주로 파일을 저장하거나 웹 사이트를 호스팅하기 위해 사용한다. 접속해야할 주소가 계속 바뀌면 안되니깐 Static IP Adress를 사용한다. 주로 인터넷을 통해 원격으로 접속한다. DigitalOcean으로 쉽게 서버 만들기 먼저 DigitalOcean에 일단 가입을 하자. https://m.do...