일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ResponseEntity
- 스프링 쇼핑몰
- 스프링 프로젝트 기본 설정
- 쇼핑몰 포트폴리오
- spring 쇼핑몰
- arraylist
- 스프링 프로젝트 설정
- 정규표현식
- 스프링 프로젝트
- 이미지 출력
- 스프링 게시판
- 인증번호 전송
- 로그아웃 기능 구현
- 스프링 이미지
- 스프링 HikariCP
- 삭제 구현
- 스프링 쇼핑몰 프로젝트
- 스프링 메일 전송
- 파일 업로드
- 스프링 게시판 구현
- spring 프로젝트
- 회원가입 기능
- 쇼핑몰 프로젝트
- 로그인 기능
- 스프링 포트폴리오
- 스프링 파일 삭제
- oracle 설치방법
- Bcrypt
- 스프링 업로드
- BCrypt 적용
- Today
- Total
Kim VamPa
[Git][CLI]git을 사용하는 이유, git 저장소 생성(git init) 본문
목표
1. git을 사용하는 이유
2. git 저장소 생성 (CLI 방법)
버전 관리 시스템이란 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템입니다. 이러한 버전 관리 시스템 중 현재 가장 많이 사용되는 것이 바로 Git입니다. 이러한 Git을 사용하는 방법 중 CLI 방식의 Git 사용법을 몇 회의 포스팅을 거쳐서 공부하고 실습할 것입니다. 이번 포스팅에선 git을 왜 많이 사용하는지에 대해서 알아보고 git을 사용하기 위한 가장 기본적인 방법인 "git 저장소 생성" 방법에 대해 알아보고자 합니다.
실습은 Window를 사용하는 관계로 Git Bash를 사용하겠습니다.
순서
1. git을 사용하는 이유
2. 명령어(git init)
1. git을 사용하는 이유
자신이 작업중인 파일들의 변경사항들을 버전별로 분류하여 체계적으로 관리 할 수 있도록 해준다.
우리는 특정 디렉토리(or 폴더)에서 어떠한 작업을 한다고 가정하겠습니다. 우리는 그 디렉토리에서 작업을 하며 수많은 파일을 만들고, 만들었던 파일을 수정을 하게 됩니다. 이러한 파일의 수는 시간이 지남에 따라 매우 많아질 것이고 관리도 번거로워지면서 많은 문제에 부딪힐 수 있습니다. 이러한 파일들을 체계적으로 관리할 수 있도록 도와주는 것이 바로 Git입니다. Git이 파일들을 체계적으로 관리한다고 하였는데 이러한 체계적 관리는 우리에게 어떠한 이익 혹은 편리함을 주는 걸까요? 큰 틀에서 3가지 장점이 있습니다.
첫 번째, 버전 관리
git을 사용하게 되면 사용자는 특정 파일들의 작업을 마치고 그 시점에서 완성한 파일을 commit을 통해서 하나의 버전으로 관리할 수 있습니다. 하나의 버전에는 이름을 부여할 수 있고 그 버전에 설명을 부여할 수 있게 됩니다. 이렇게 버전으로 파일이 관리가 된다면 사용자는 과거 특정 시점에 어떠한 작업을 했는지 확인을 할 수 있고 그 버전의 설명을 통해서 왜 그렇게 작성하였는지를 알 수 있습니다. 그리고 사용자가 현재의 파일에 문제가 생겨서 특정 시점의 버전으로 파일을 되돌리길 원할 때 그 시점으로 파일을 되돌릴 수도 있습니다.
두 번째, 백업
우리의 컴퓨터에 작업을 하다 보면 기계의 성능 저하 던 지, 불의의 사고로 인해 작업 중이던 파일에 손상이 갈 수 있습니다. 우리는 이러한 경우를 대비해서 자신의 개인 장치에 백업을 하던지, 백업을 할 수 있는 저장소를 제공하는 서비스를 이용합니다. 저장소를 제공하는 서비스들 중에 git기술을 활용하여 백업 서비스를 제공하는 사업자들이 있습니다.
이러한 사업자 중 가장 대표적인 것이 바로 github입니다. 우리는 인터넷만 된다면 우리가 작업 중이던 파일들을 github서버에 저장함으로서 백업을 할 수 있게 됩니다. 더불어서 우리는 작업환경에 좀 더 자유로울 수 있습니다. 자신의 컴퓨터가 아닌 다른 컴퓨터를 사용하더라도 인터넷이 된다면 github서버에 저장해둔 자신의 파일들을 가져와서 작업을 한 뒤 다시 github에 저장하면 되기 때문입니다.
세 번째, 협업
git의 앞의 2개의 장점으로 인해 자연스럽게 가지게 된 장점이 바로 '협업'입니다. github라는 원격 저장소를 통해서 같이 작업을 해야 하는 파일들을 협업자들이 같이 공유를 할 수 있습니다. 각 협업자들은 자신의 컴퓨터에 공유된 파일들을 가져와서 작업을 하게 되고 작업을 마친 뒤 commit을 통해서 새로운 버전을 만들게 됩니다. 그리고 새롭게 생성한 버전을 github의 올려져 있는 파일(버전)과 합치게 됩니다. 더불어서 합치게 될 때 기존 버전에서 새로운 버전으로 바뀔 때 git에서는 변경이 되는 사항들을 보여주고, 충돌이 일어날 가능성이 있는 부분들을 경고를 해주는 기능들이 있습니다.
2. git 저장소 생성
git 저장소 생성이라는 말을 다르게 하면 자신이 버전별로 관리하기를 원하는 파일들이 있는 디렉토리(혹은 폴더)를 git이 관리를 하도록 지정하는 작업이라고 말할 수 있습니다. CLI방식으로 git 저장소를 지정하는 방법은 다음과 같습니다.
1. git으로 관리하고 싶은 프로젝트의 디렉토리로 이동을 합니다.
cd 이동하고자 하는 디렉토리 경로
|
2. "git init'명령어를 실행합니다.(반드시 git 저장소로 지정하고자 하는 위치해 있어야 합니다.)
git init
|
git 저장소로 생성 다시 말해 git 이 관리하는 디렉토리가 된경우 해당 디렉토리에 [.git] 이라는 폴더가 생기게 됩니다. 해당 폴더는 지정한 디렉토리를 버전별로 관리하기 위해 필요로 하는 파일들이 모여 있는 곳이라고 보시면 됩니다.
3. git 저장소 취소
git 저장소로 지정이 되었을 때 폴더가 생겼습니다. [. git] 폴더를 자연스럽게 git 저장소가 해제하게 됩니다. Window와 같이 GUI방식 일시 직접 해당 폴더를 찾아가서 삭제를 하면 됩니다. CLI방식일 경우 삭제하고자 하는 [.git]을 가진 디렉토리로 이동을 한 뒤 "rm -r .git"명령어를 통해서 [.git]폴더를 삭제하시면 됩니다.
rm -r .git
|
4. 실습
4.1 git 저장소 생성
저는 c 드라이브에 이름이 study인 디렉토리를 만들고 해당 디렉토리를 git이 관리하는 데릭토리로 만들어보겠습니다.
먼저 c 드라이브로 이동합니다.
cd /c
|
아래의 명령어를 통해서 study 디렉토리를 만들고 ls 명령어를 통해서 만들어졌는지 확인합니다.
mkdir study
ls -al
|
cd 명령을 통해 새로 생성한 디렉토리로 이동합니다.
cd study
|
git 저장소 생성 명령을 사용합니다.
git init
|
ls명령을 통해서 [.git] 디렉토리가 생겼는지 확인합니다. (혹은 GUI 환경에서 직접 해당 경로로 들어가서 폴더가 생겼는지 확인합니다. )
ls -al
|
* 윈도우에서 직접 확인하기 위해 아래와 같이 폴더가 안 보이는 경우가 있습니다. 이럴 경우 창 제일 상단 보기를 클릭한후 [숨김 항목]을 체크해주시면 폴더가 보입니다.
git status 명령을 통해서도 해당 디렉토리가 git이 관리하는 디렉토리가 되었는지 확인할 수 있습니다. 아래와 같은 문구가 나온다면 정상적으로 해당 디렉토리가 git 저장소가 된 것입니다.
git status
|
- on branch master : 현재 작업 중인 branch가 matser라는 의미입니다. 처음 git 저장소를 생성하게 되면 기본 branch가 master입니다.
- No commits yet : 아직 commit 된 파일이 없다는 의미입니다.
- nothing to commit (create/copy files and use 'git add' to track) : commit이 가능판 파일이 없으니 파일을 추가를 하라는 의미입니다.
4.2 git 저장소 해제
cd 명령을 통해서 자신이 git 저장소 지정 해제를 원하는 디렉토리로 이동합니다.
cd /c/study
|
'rm -r .git' 명령어를 통해서 [.git] 디렉토리를 삭제합니다.
rm -r .git
|
ls 명령을 통해서 해당 디렉토리가 삭제 되었는지 확인합니다.
ls -al |
git status 명령을 통해서 해당 디렉토리가 git이 관리하는 디렉토리가 해제되었는지 확인합니다.
git status
|
- not a git repository 라는 문구가 뜨면 정상적으로 git 저장소 지정이 해지가 된 것입니다.
REFERENCE
- opentutorials.org/course/3837
- opentutorials.org/course/3839/22591
- git-scm.com/book/ko/v2/Git%EC%9D%98-%EA%B8%B0%EC%B4%88-Git-%EC%A0%80%EC%9E%A5%EC%86%8C-%EB%A7%8C%EB%93%A4%EA%B8%B0
DATE
- 2020.12.09
'공부 > 기타(설치 등)' 카테고리의 다른 글
[용어정리] 이벤트 핸들러(Event Handler) (0) | 2021.01.11 |
---|---|
[Git] git의 3가지 영역, 3가지 상태, 라이프 사이클 (0) | 2020.12.22 |
[Linux] 명령어 정리(1)(pwd, cd,cd /, cd ~, cd -, cd .. ) (0) | 2020.12.03 |
[서버]Telnet을 이용한 SMTP 메일 발송 (2) | 2020.08.26 |
자료구조란 무엇인가? (0) | 2020.03.18 |