이롭게 현명하게

[Git] 깃허브(GitHub)란? 본문

Git

[Git] 깃허브(GitHub)란?

dev_y.h 2022. 12. 5. 18:13
728x90
반응형

※ 본 포스팅은 패스트 캠퍼스 강의를 수강하며 정리한 내용입니다.


목차

깃(Git) 이란?

깃, 깃허브 , 깃 랩 차이점

깃을 써야 하는 이유

깃을 사용하는 방법

깃헙에 코드를 올리는 과정



[깃 (Git) 이란?]

https://git-scm.com/

 

Git 이란 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷 스트림 기반의 분산 버전 관리 시스템이다. Git는 분산 소스 버전 관리 시스템(Distributed VCS)으로서 서버를 분산시켜 구축할 수 있다. Git은 소프트웨어 개발에서 소스코드 관리에 주로 사용되지만 어떠한 파일 집합의 변경사항을 지속적으로 추적하기 위해 사용될 수 있다. 분산 버전 관리 시스템으로서 빠른 수행 속도에 중점을 두고 있는 것이 특징이며 데이터 무결성, 분산, 비선형 워크플로를 지원한다. 클라이언트-서버 시스템과 달리 모든 노드의 모든 깃 디렉터리는 네트워크 접속이나 중앙 서버와는 독립적으로 동작하는 완전한 이력 및 완전한 버전 추적 등 모든 기능을 갖춘 저장소이다. 깃은 많은 GUI를 지원하는 것이 특징이다. 현재 소스 트리, GitHub Desktop 등의 여러 GUI를 사용할 수 있다.

코딩할 때 단순히 ctrl + z를 눌러 이전 상태로 되돌리는 것이 아니라, 원하는 시점마다 세이브포인트를 만들고 이들 간에 자유롭게 공유할 수 있다. 내가 만든 버전뿐 아니라 동료가 만든 버전으로 이동할 수 있고, 동료와 내 버전을 비교해서 최신폰으로 코드를 업데이트할 수 있다.

깃을 사용한다면 전 세계 사람들이 시간과 공간에 제약 없이 협업을 할 수 있다.

 

[Git] 형상 관리 / 형상 관리 버전 관리

목차 버전 관리 개발 단계 지정하기 버전 등록 관련 주요 기능 버전 관리 과정 [버전 관리] 개발자 A, B, C, D…. 가 있다. 공동으로 서로 작성한 내용을 공유하며 작업한다고 했을 때 A가 작성한 파

devyihyun.tistory.com

 


[깃(Git), 깃허브(GitHub), 깃랩(GitLab) 차이점]

 

깃(Git)

버전 관리 도구로써 변경된 내용만 관리한다.

즉, 깃을 이용하게 되면 코드를 언제 누가 뭘 변경하였는지 커밋을 올리면서 서로 비교할 수 있다.

 

 

깃허브(GitHub)

코드 저장소이다.깃허브는 루비 온 레일스로 작성된 분산 버전 관리 툴인 깃 저장소 호스팅을 지원하는 웹 서비스이다. 깃허브는 영리적인 서비스와 오픈소스를 위한 무상 서비스를 모두 제공한다.
깃이 텍스트 명령어 입력 방식인데 반해, 깃허브는 그래픽 유저 인터페이스(GUI)를 제공한다. 구글 드라이브. 네이버 마이 박스 등의 클라우드 저장소에는 사진, 동영상, 파일과 같은 것들을 저장한다. 깃허브는 이와 같이 사진, 동영상을 저장하는 것처럼 코드를 저장한다.

 

 

깃 랩 (GitLab)

깃 저장소 및 CI/CD, 이슈 추적, 보안성 테스트 등의 기능을 갖춘 웹 기반의 데브옵스 플랫폼으로써, 오픈 소스 라이선스 및 사유 소프트웨어 라이선스를 사용한다. 2019년 기준으로, 깃 저장소와 이슈 추적 기능을 갖춘 유일한 단일 애플리케이션의 (Single Application) 데브옵스 솔루션이다.

 

 


[깃을 써야 하는 이유]

현재 개발 팀 프로젝트에서 버전 관리와 클라우드 저장소는 필수인 기술이다.
팀 프로젝트와 회사에서 효율적인 개발 협업을 할 수 있다.

 

<꼭 깃을 사용해야 하나? 없이 개발한다면?>

  • 세이브 없이 게임하기 ex) 닌텐도 모여봐요 동물의 숲, 닌텐도 젤다의 전설 , 닌텐도 포켓몬스터 시리즈 등
  • 폰에서 하던 게임을 PC에서 할 때 처음부터 다시 시작
  • 온라인 게임에서 온라인이 안되어 USB에 게임 상태를 저장해서 같은 팀(길드) 끼리 돌려가며 조금씩 플레이

 

<여러 명의 개발자가 하나의 소프트웨어를 만들려면?>

만약 다수의 개발자들이 버전을 관리한다면?

  1. 각자 이름의 폴더를 만들고 각자 개발하다가 매주 일요일에 메일로 보내서 합병한다.
  2. 혹시 에러가  날 수 있으니 백업본을 만들어 둔다. (소스_날짜.zip)
  3. 상대방이 작업 중인 파일을 고치고 싶으면 메일에 따로 적어둔다.
  4. 코드를 합칠 때 이를 확인해서 내 코드에도 반영

깃을 사용하지 않으면 이와 같은 과정을 거쳐야 할 것이다. 하지만 이러한 방법은 코드 합병 시 많은 어려움이 있다.

그래서 따로 조금씩 작업하다가 백업을 쉽게 하고 내가 원할 때 코드를 합칠 수 있는 방법을 고안해 낸 것이 이다.

 


[깃을 사용하는 두 가지 방법]

 

1.     CLI (Command Line Interface)

- 명령어 입력

- 깃이 제공하는 모든 명령어를 사용 가능 -> 입문자는 어렵다는 단점

2.     GUI (Graphical User Interface)

- 편리하고 쉽게 할 수 있도록

- 입문자는 이해하기가 쉽다

- 그래프나 코드 변경사항이 잘 보여 선호하는 사람이 많다

 


[깃헙에 코드를 올리는 과정]

 

1.     내 컴퓨터에 프로젝트 폴더에  여기 깃을 쓸 거다! ' 명령한다.( git init )

2.     즐겁게 코딩

3.     내가 변경한 파일 중 올리길 원하는 것만 선택한다. ( git add )

4.     선택한 파일들을 한 덩어리로 만들고 설명 적어주기  (git commit -m “첫 페이지 제작” )

5.     깃헙 사이트에서 프로젝트 저장소 만들기 ( 블로그 만드는 거랑 동일 ) 

6.     내 컴퓨터 프로젝트 폴더에 깃헙 저장소 주소 알려주기  ( git remote add )

7.     내 컴퓨터에 만들었던 덩어리 깃헙에 올리기  ( git push )

 

 

 

[Git] Git 설치하기 / Git 설치 / Git 2.38.1 설치

[깃 설치하기] ※ 본 포스팅은 윈도우11의 환경에서 진행되었습니다. 디폴트(기본값)로 설치를 원한다면 모두 Next 또는 중간에 Git의 기본 편집기를 선택 후 모두 Next 명령 프롬프트 (window)/Terminal(M

devyihyun.tistory.com

 

[Git] 깃헙에 코드를 올리는 과정 / 깃허브 명령어

목차 깃 설명서 깃 과정 깃 코드 다운로드 [깃헙에 코드를 올리는 과정] 1. 내 컴퓨터에 프로젝트 폴더에 ‘ 여기 깃을 쓸 거다! ' 명령한다.( git init ) 2. 즐겁게 코딩 3. 내가 변경한 파일 중 올리길

devyihyun.tistory.com

 

[Git] 깃 시작하기 / 깃 로컬 저장소 만들기

[Git] 깃 초기화 / 깃 로컬 저장소 / Git 로컬 저장소 만들기 / Git 폴더 생성 / 깃 연동하기 / 리포지토리 만들기 [깃헙에 코드를 올리는 과정] 1. 내 컴퓨터에 프로젝트 폴더에 ‘ 여기 깃을 쓸 거다! '

devyihyun.tistory.com

 

[Git] 초보자를 위한 깃허브 사용법 / 깃허브에 코드 올리기

목차 깃헙에 코드를 올리는 과정 버전 관리 버전 생성하기 [ 깃헙에 코드를 올리는 과정 ] 1. 내 컴퓨터에 프로젝트 폴더에 ‘ 여기 깃을 쓸 거다! ' 명령한다.( git init ) 2. 즐겁게 코딩 3. 내가 변경

devyihyun.tistory.com

 

[Git] 초보자를 위한 깃허브 사용법 / 깃허브 연결하기

목차 로컬 저장소와 원격 저장소 깃허브에 원격 저장소 만들기 로컬 저장소와 원격 저장소 연결 [ 깃헙에 코드를 올리는 과정 ] 1. 내 컴퓨터에 프로젝트 폴더에 ‘ 여기 깃을 쓸 거다! ' 명령한다

devyihyun.tistory.com

 

[Git] 깃허브에서 코드 내려받기

목차 코드 내려받기 과정 원격 저장소 내 컴퓨터 받아오기 clone 원격 저장소의 변경사항 내 컴퓨터에 받아오기 pull [ 코드 내려받기 과정 ] 개발자 A가 페이지 1,2를 commit 하고 push 하여 원격 저장

devyihyun.tistory.com

 

[Git] 소스트리 설치하기

목차 설치 전 작업 소스트리 설치 과정 소스트리 시작하기 [설치 전 작업] [Git] Git 설치하기 / Git 설치 / Git 2.38.1 설치 [깃 설치하기] ※ 본 포스팅은 윈도우11의 환경에서 진행되었습니다. 디폴트(

devyihyun.tistory.com

 

[Git] 소스트리(Sourcetree)란?

[ 소스 트리(Source tree)란? ] 깃을 사용하는 방법으로는 CLI ( Command-Line Interface) 와 GUI ( Graphical User Interface )가 있다. CLI는 CMD 창에서 명령어를 입력하여 버전을 관리하고, GUI는 버튼 클릭으로 Git 명

devyihyun.tistory.com

 

 

[Git] 깃 브랜치(Git Branch)

목차 브랜치란? 브랜치 사용법 브랜치 명령어 [ 브랜치(Branch)란? ] 소프트웨어를 개발할 때에 개발자들은 동일한 소스코드를 함께 공유하고 다루게 된다. 깃은 동시에 여러 개발자들이 프로젝트

devyihyun.tistory.com

 


잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊

댓글과 좋아요는 큰 힘이 됩니다!

728x90
반응형
Comments