Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문하기 1, 2장을 공부하면서 실습해본 것을 정리해보았다.
http://www.yes24.com/Product/Goods/113791485?CategoryNumber=001001003031004
Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문 - YES24
IT 분야 스테디셀러 『Do it! 지옥에서 온 문서 관리자 깃 & 깃허브 입문』 전면 개정!30만 구독자가 선택한 ‘생활코딩’의 영상 중 52개를 엄선하여 재구성하고 내용을 보강했다!깃 & 깃허브 기초
www.yes24.com
문서 관리자, 깃
깃
깃이 제공하는 핵심 기능으로는 버전 관리(version control), 백업(backup), 협업(collaboration)이 특징이다.
1. 버전 관리하기
깃(Git): 문서를 수정할 때마다 구체적으로 기록하는 버전 관리 시스템
2. 백업하기
깃 허브(Git Hub): 깃의 원격 저장소, 온라인 저장소. 자료가 유실되는 것을 방지하기 위해 백업 공간을 제공하는 인터넷 서비스 중 깃 파일을 위한 것
3. 협업하기
깃 허브와 같은 온라인 서비스를 사용하면, 원격 저장소로 파일을 공유해서 여러 사람이 함께 협업이 가능
깃 프로그램의 종류
깃 허브 데스크톱(GitHub Desktop)
깃 온라인 저장소 서비스인 깃 허브에서 제공하는 프로그램으로 기본적인 수준의 툴을 제공한다.
토터서깃(TortoiseGit)
윈도우 탐색기의 빠른 메뉴에 추가하여 사용할 수 있는 윈도우 전용 프로그램이다.
소스트리(SourceTree)
기본적인 것부터 고급 기능까지 제공하는 자유로운 프로그램이다.
커맨드 라인 인터페이스(Command line interface, CLI)
CMD, 터미널 창에 직접 명령을 입력해서 깃을 사용하는 방식으로 리눅스 및 깃 명령어를 사용해 위의 프로그램보다 사용하기 복잡하지만, 그만큼 다양한 방식으로 깃을 활용할 수 있다.
윈도우에서 깃 설치하기
1. https://git-scm.com/ 으로 접속한다.
2. Download for windows 클릭 후 Click here to download 클릭해서 설치 파일을 다운로드 한다.
3. 쭉쭉 Next 클릭해서 넘어가 준다.
4. 두번째 선택지인 Override the default branch name for new repositories 선택 후 Next를 눌러준다.
5. 또 Next 쭉쭉 눌러서 넘어가준다.
6. 어떠한 선택지도 누르지 않고 install을 클릭해서 설치를 마저 해준다.
7. 깃 실행해서 git 입력 후 사용가능한 명령어가 여러 옵션이 나오면 제대로 설치가 완료된 것이다.
깃 환경 설정하기
깃은 버전을 만든 사용자 정보도 함께 저장하기 때문에 어떤 버전을 누가 언제 만들었는지 같이 저장을 해준다. 리눅스 방식의 명령을 사용하여 윈도우는 깃 배시, 맥은 터미널창에서 아래 명령어를 사용해서 사용자 정보를 저장할 수 있다.
$ git config --global user.name "이름"
$ git config --global user.email "메일주소"
리눅스 명령 연습하기
현재 디렉터리 상태
깃 배시를 실행해보면 커서 윗줄에 있는 맨끝에 물결표시가 존재한다. 이는 현재 위치가 홈 디렉터리라는 의미이다.
pwd 명령은 현재위치의 경로가 어디인지 알려준다.
ls 명령은 현재 디렉터리에 어떤 파일이나 디렉터리가 있는지 확인할 수 있다. 뒤에 -l 옵션을 붙이면 상세 정보도 알 수 있다.
옵션 | 설명 |
-a | 숨긴 파일이나 디렉터리 표시 |
-l | 파일이나 디렉터리의 상세정보 표시 |
-r | 파일의 정렬 순서를 거꾸로 표시 |
-t | 파일 작성 시간순으로 표시 |
터미널 창 지우기
$ clear
clear 명령어를 이용해 현재까지 터미널 창에 입력한 내용을 삭제할 수 있다.
디렉터리 이동
cd(chage directory) 명령을 입력해서 터미널 창에서 디렉터리 사이를 이동할 수 있다. cd .. 명령어로 현재 위치에서 상위 디렉터리로 이동하고 하위 디렉터리로 갈 때는 원하는 디렉터리 입력해서 이동한다. 홈 디렉토리로는 cd ~ 명령어를 사용해서 이동한다.
$ cd ..
$ cd Users
$ cd ~
기호 | 설명 |
~ | 현재 접속 중인 사용자 디렉터리 'c/Users/사용자 아이디'로 이동 |
. | 현재 사용자가 작업 중인 디렉터리 |
.. | 상위 디렉터리 |
디렉터리 만들기 및 삭제
하위 디렉터리를 만드려면 mkdir 명령어 사용할 수 있다. 디렉터리가 제대로 만들어졌는지 확인하려면 ls 명령어 사용해서 상태를 확인할 수 있다.
$ cd Documents
$ mkdir test
$ ls
디렉터리 삭제는 rm 명령어를 사용하며, -r 옵션을 같이하면 하위 디렉터리와 파일을 함께 삭제할 수 있다.
$ rm -r test
터미널 종료
창을 끄거나 exit 명령어로 종료한다.
$ exit
빔 편집기에서 텍스트 문서 만들기
빔
빔 편집기는 번거롭게 마우스와 키보드를 동시에 사용하는 것이 아닌, 터미널 화면에서 키보드만 이용해서 텍스트 문서를 만들 수 있다.
문서 작성
원하는 디렉터리에 vim 명령어를 이용해서 test.txt 파일 생성해보자.
$ vim test.txt
빔은 저장, 종료 등이 가능한 ex 모드와 텍스트를 입력하고 수정할 수 있는 입력 모드로 나누어져 있다. I 나 A를 눌러서 입력모드로 진입하면 -- insert --라고 표시되면서 입력이 가능해진다.
다시 ex 모드로 ESC키를 눌러서 돌아간 뒤, :wq를 입력하고 엔터를 치면 파일이 저장되고 빔 편집기가 종료된다.
ex 모드 명령
명령 | 설명 |
:w, :write | 문서 저장 |
:q, :quit | 편집기 종료 |
:wq | 문서 저장 및 편집기 종료 |
:q! | 문서를 저장하지 않고 편집기를 종료하면서 .swp의 임시파일 생성 |
:wq 파일명 | 문서를 지정한 파일 이름으로 저장 |
cat 명령
$ cat test.txt
명령 | 기능 |
$ cat file | 파일의 내용을 보여줌 |
$ cat file(s) > Newfile | file(s)을 차례로 연결해서 새로운 Newfile을 만듦 |
$ cat file1 >> file2 | file1의 내용을 file2 끝에 이어붙임 |
깃 저장소 만들기
새 디렉터리를 만든 후 ls 명령어로 확인해 보면 현재 디렉터리(.)와 상위 디렉터리(..)가 확인되며 파일이 없다.
$ cd ~
$ mkdir hello-git
$ cd hello-git
$ ls -la
디렉터리에 저장소를 만들기 위해 git init 명령어 사용하여 깃을 사용할 수 있도록 초기화해준다. 이후 터미널 경로 끝에 (main)이 표시되면서 hello-git에는 깃을 위한 저장소가 생성된다. ls 명령어로 다시 확인해보면 .git이라는 디렉터리로 저장소가 생성되어 있다.
$ git init
$ ls -la
새로운 버전 만들기
스테이지와 커밋 이해하기
작업 트리(working tree): 파일 수정, 저장 등의 작업을 하는 디렉터리이며 우리 눈에 보인다. 현재 새로 생성한 hello-git이 이에 해당한다.
스테이지(stage): 버전으로 만들 파일이 대기하는 곳이다.
저장소(리포지토리, repository): 스테이지에서 대기하고 있던 파일이 commit 명령어를 통해 버전으로 만들어져서 저장이 되는 곳이다.
작업트리에서 문서 수정
깃의 상태를 확인하기 위해 git status 입력한다.
On branch main은 현재 main 브랜치에 있다는 의미이다. No commits yets은 커밋한 파일이 없다는 것이며, nothing to commit은 커밋할 파일이 없다는 의미이다.
$ git status
hello-git에 빔 편집기를 이용해서 테스트용으로 새로운 파일 작성한다.
ls -la 명령어를 입력하면 새로 만든 파일이 있음을 확인할 수 있다.
이 상태에서 다시 git status를 입력하면
아직 한 번도 관리하지 않은 파일인 untracked files라고 hello.txt 를 보여준다.
스테이징
스테이징(staging): 깃에게 버전을 만들 준비를 하라고 알려주는 것이며, 스테이지에 올린다고 표현하기도 한다. git add 명령을 사용해서 스테이징을 수행할 수 있다.
$ git add hello.txt
$ git status
untracked files가 chagnes to be committed로 변경된 문구가 나오면서 new file인 hello.txt를 커밋할 것이다라고 출력한다.
윈도우에서 스테이징할 때 경고 메시지가 나타는 이유는 엔터를 치면 개행문자가 입력되는데, 리눅스에서의 줄 바꿈 문자(LF)와 윈도우에서의 줄 바꿈 문자(CRLF)가 달라 깃에서는 텍스트 문서의 CRLF 문자를 LF 문자로 자동 변환해서 커밋할 것이라는 의미이다.
파일 커밋하기
깃에서 파일을 커밋하는 명령은 git commit이며, 이에 -m 옵션을 붙여서 커밋 메시지를 함께 저장할 수 있다. 파일 1개가 변경됐고, 파일 1개의 내용이 추가되었다고 하면서 저장소로 추가된 것의 결과를 함께 보여준다.
$ git commit -m "massage1"
status를 확인해보면 commit할 파일이 없고 작업 트리도 깨끗하다고 출력한다. git log로 저장소에 저장된 버전을 확인할 수 있다.
$ git log
[깃 & 깃 허브 입문] 브랜치
직접 책을 보면서 실습하고 공부한 내용을 정리했다. https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=302554047 [전자책] Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문 (전면 개정판) 달라진 내용을 간단히
gunrestaurant.tistory.com
'일상 > 컴퓨터' 카테고리의 다른 글
[Python 파이썬] Numpy 넘파이 기본 (0) | 2023.04.26 |
---|---|
[GitHub 깃 & 깃허브 입문] 깃허브로 협업하기 (0) | 2023.04.14 |
[GitHub 깃 & 깃허브 입문] 협업 환경 (0) | 2023.04.07 |
[GitHub 깃 & 깃허브 입문] 깃허브 (0) | 2023.03.31 |
[GitHub 깃 & 깃허브 입문] 브랜치 (0) | 2023.03.24 |