본문 바로가기
TIL/TIL

git, CLI

by koreashowme 2020. 1. 15.

 

Tools (git, CLI)

Command Line Interface(이하 CLI)는 Graphic User Interface(이하 GUI)와는 다르게, 마우스와 각종 UI 컴포넌트 대신, 표준 입출력 시스템(Standard I/O)을 통한 입력과 그에 따른 결과를 출력하는 형태로 나타납니다. 컴퓨터의 시작은 GUI가 아닌 CLI였으며, 시대를 거쳐서 우리는 마우스, 터치들을 이용한 직관적인 프로그램의 형태를 만날 수 있었습니다.

그러나 여전히 CLI는 여러가지 측면에서 유리하고, 개발자라면 반드시 배워야 할 주요 스킬입니다. 강력하고 빠른 배치 작업들을 수행할 수 있으며, 컴퓨터, 특히 Unix/Linux 시스템을 깊이 알기 위해서는 많은 부분을 CLI를 이용해 탐색하면서 그 작동원리 등을 파악할 수 있습니다.

이 시간에는 Unix/Linux의 주요 Command Line 명령어를 배우면서 다음과 같은 강의 목표를 달성할 수 있을 것입니다.

 

프로그래밍에 있어서, 파일 내용의 변경은 너무나도 자주 발생하는 일입니다. 코드의 잘못된 부분을 고치고, 변경하다보면, 이전에 작성한 내용들을 보존해야할 필요를 느끼게 됩니다. 이러한 일을 해결해 주는 것이 바로 버전 관리 시스템입니다.

이 시간에는 버전 관리 시스템을 배우고, 가장 많이 쓰이고 강력한 도구인 git을 배움으로 프로그래밍에 있어서의 버전 관리와 협업의 기본을 배웁니다. 이를 통해 실제 회사 등에서 진행하게 될 실무에서의 일을 배우게 되며, 더 나아가 앞으로 여러분이 Open Source 생태계에 기여할 수 있는 멋진 개발자가 될 수 있을 것입니다.




Achievement Goals

  • 버전 관리 시스템의 필요성을 이해할 수 있다
  • git의 기본적인 개념에 대해 이해할 수 있다 - local/remote repository - fork, clone, commit, pull, push
  • git 명령어와 git repository의 현재 상태 및 변경사항들을 확인할 수 있다 - status, diff, log
  • GitHub에 올려져 있는 과제를 받아오고 제출할 수 있다
  • pull request를 이용한 오픈소스 프로젝트 참여 방식을 이해할 수 있다
  • (Advanced) git을 효과적으로 사용하는 방법에 대해 이해할 수 있다 - reset, checkout - branch
  • 기본적인 unix/linux 명령어를 사용할 수 있다 - ls, cd, mkdir, rm, pwd, sudo, chown
  • unix/linux 명령어를 사용할 때 등장하는 키워드에 대해 이해할 수 있다 - 현재 디렉토리, 홈 디렉토리, 루트 디렉토리
  • unix/linux의 파일/디렉토리 소유권에 대해 이해할 수 있다

'TIL > TIL' 카테고리의 다른 글

What's a "unit test"? (unit test)  (0) 2020.01.15
Testing, and the value thereof (unit test)  (0) 2020.01.15
테스트 주도 개발 TDD(Test-driven Development)  (0) 2020.01.15
CLI & GUI & LINUX/UNIX & useful commands  (0) 2020.01.15
code .  (0) 2020.01.15

comment