1️⃣ 지옥에서 온 문서 관리자, 깃

  • 리눅스 창시자인 리누스 토르발스에 의해 개발됨
  • 오픈 소스 방식으로 개발되는 소스 코드를 관리하기 위해 만든 시스템

1-1. 깃으로 무엇을 할 수 있을까?

1) 버전 관리하기(version control)

  • 깃(Git)은 문서를 수정할 때마다 언제 수정했는지, 어떤 것을 변경했는지 등을 구체적으로 기록하는 버전 관리 시스템

2) 백업(backup)

  • 백업: 현재 컴퓨터에 있는 자료를 다른 컴퓨터에 복제하는 것
  • 깃허브(Github): 깃의 원격 저장소(또는 온라인 저장소)

3) 협업(collaboration)

  • 팀원들끼리 파일을 편하게 주고받으며 일할 수 있음
  • 누가 어느 부분을 어떻게 수정했는지 기록으로 남음 => 나중에 오류가 생겼을 때 파악하기 쉬움
  • 깃은 협업 과정에서 일어날 수 있는 여러 문제를 중간에서 정리해 주는 기능도 수행

1-2. 깃 프로그램

  • 깃은 제품군이라 생각할 수 있음
  • 깃 프로그램: 깃을 좀 더 편리하게 사용할 수 있도록 해주는 것
    • 깃 클라이언트 프로그램(Git client program)이라고도 함
  • 종류
    • 깃허브 데스크톱: 그래픽 사용자 인터페이스(GUI)로 구현
    • 토터스깃(TortoiseGit): 윈도우 탐색기 빠른 메뉴에 포함되어 있는 윈도우 전용 프로그램
    • 소스트리: 깃의 기본 기능부터 고급 기능까지 사용 가능

1-3. 커멘드 라인 인터페이스(Command Line Interface, CLI)

  • 터미널 창에 직접 명령을 입력해서 깃을 사용하는 방식
  • 리눅스 기본 명령어를 알아야 함 -> 어렵다
  • 반복할 일을 자동화하거나 서버 환경에서 깃을 사용하는 등 다양한 활용 가능

2️⃣ 윈도우에 깃 설치하기

  • 2-1. 윈도우에 깃 설치하기

  • 교재 P.18 ~ P.23

2-2. 윈도우에서 깃 실행하기

  • 깃 명령에서 사용할 수 있는 여러 옵션 확인
    $ git
    

2-3. 깃 환경 설정하기

● 사용자 정보 입력

  • 깃은 버전을 저장할 때마다 해당 버전을 만든 사용자 정보도 함께 저장함
  • git config: 사용자 정보 설정
    • --global 옵션: 현재 컴퓨터에 있는 모든 저장소에서 같은 사용자 정보를 사용하도록 설정
$ git config --global user.name "이름"
$ git config --global user.email "메일 주소"

3️⃣ 리눅스 명령 연습하기

  • 터미널 창에서 깃을 사용하기 위해 쓰는 명령은 리눅스 명령과 동일

3-1. 현재 디렉터리 살펴보기

  • ~ 표시: 현재 위치가 홈 디렉터리(home directory)임을 표시
  • pwd: 현재 위치의 경로
  • ls: 현재 디렉터리의 파일, 하위 디렉터리 확인
    • 이름 뒤에 슬러시(/) 가 붙어 있는 것은 디렉터리임
    • 옵션
      • -al처럼 옵션을 2개 이상 사용 가능
    옵션 설명
    -a 숨긴 파일이나 디렉터리도 함께 표시
    -l 파일이나 디렉터리의 상세 정보를 함께 표시
    -r 파일의 정렬 순서를 반대로 표시
    -t 파일 작성 시간순으로(내림차순) 표시

3-2. 터미널 창 지우기

  • clear 명령을 활용

3-3. 터미널 창에서 디렉터리 이동하기

  • cd: 터미널 창에서 디렉터리 사이를 이동
    • 상위 디렉터리로 이동: cd ..
    • 하위 디렉터리로 이동: cd 디렉터리 이름
    • 홈 디렉터리로 이동: cd ~
  • 리눅스에서 디렉터리를 나타내는 기호 |옵션|설명| |—|———-| |~|현재 접속중인 사용자 디렉터리| |.|현재 사용자가 작업 중인 디렉터리| |..|현재 디렉터리의 상위 디렉터리|

3-4. 터미널 창에서 디렉터리 생성/삭제

  • mkdir: 현재 디렉터리 안에 하위 디렉터리를 만들
    $ cd Documents // Documents 디렉터리로 이동
    $ mkdir test // 하위 디렉터리로 test 생성
    
  • rm: 현재 디렉터리에서 하위 디렉터리 삭제
    • 반드시 삭제할 디렉터리의 상위 디렉터리에서 진행해야 함
    • -r 옵션: 디렉터리 안에 있는 하위 디렉터리와 파일을 함께 삭제 가능

3-5. 터미널 종료하기

  • exit 명령어 활용

4️⃣ 빔 편집기에서 텍스트 문서 만들기

  • 빔(Vim)을 활용하여 기본적인 문서 편집 수행

4-1. 빔이란?

  • 터미널 화면에서 텍스트 문서를 바로 만들 수 있는 텍스트 편집기

4-2. 빔에서 문서 작성/저장

● 파일 생성

$ vim 파일명.txt

● 빔의 모드

  • 입력 모드
    • 문서 작성/ 종료 등
    • 화면 아래에 INSERT 또는 끼워넣기 딘어가 뜸
    • ESC 키fmf snffj ex 모드로 돌아감
  • ex 모드
    • 텍스트 입력, 수정
    • :wq + Enter 키: 작성한 파일을 저장하고 편집기 종료, 터미널 창으로 돌아감

4-3. 빔의 ex 모드 명령

  • 빔의 ex 모드에서 사용하는 명령은 콜론(:)으로 시작
  • 자주 사용하는 명령어
옵션 설명
:w 또는 :write 편집하던 문서 저장
:q 또는 :quit 편집기 종료
:wq 편집하던 문서를 저장, 종료
:q! 편집하던 문서를 저장하지 않고 편집기를 종료, 확장자가 .swp안 임시 파일이 생성됨
:wq 파일명 편집하던 문서를 지정한 파일 이름으로 저장

4-4. cat 명령으로 텍스트 문서 확인하기

  • cat
    • 터미널 창에서 텍스트 문서의 내용을 간단히 확인
    • cat 파일명.txt: 터미널 창에 해당 파일의 내용을 보여줌
  • 명령 모음
명령 기능
$ cat file file 내용을 화면에 표시
$ cat file(s) > Newfile file(s)를 파례로 연결해서 새로운 파일인 Newfile을 생성
$ cat file1 » file2 file1의 내용을 file2의 내용 끝에 연결

📚 Reference

  • Do it! 지옥에서 온 문서 관리자 깃 & 깃허브 입문(전면 개정판) p.11 ~ p.41