일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 조건문
- IF문
- 함수
- burp suite
- property
- 사칙연산
- Pwndbg
- 백준 파이썬
- xss game 풀이
- 객체
- document
- jQuery
- 포인터
- github
- xss game
- suninatas 풀이
- window
- 김성엽 대표님
- sql injection
- 파이썬
- 자바스크립트
- htmlspecialchars
- element 조회
- blind sql injection
- python
- object
- lord of sql injection
- 배열
- 백준 알고리즘
- 메소드
- Today
- Total
power-girl0-0
[GIT] git 등장 배경과 장점 본문
해당 게시물은 나동빈 님의 'Git으로 시작하는 협업 및 오픈소스 프로젝트'강의를 바탕으로 작성된 것입니다.
스스로 공부한 것을 정리하고 복습하기 위한 목적으로 작성하였습니다.
Git
깃(Git)을 이용하면 하나의 프로젝트를 여러 사람들과 함께 효과적으로 관리하여 협업한다.
실제로 오픈소스를 효과적으로 관리하기 위한 목적으로 깃이 만들어 졌으므로 깃은 실제 프로젝트에 적용하기에 매우 적합합니다.
하나의 프로젝트를 여러명이서 함께 작업한다고 가정해보자.
'동시에' 프로젝트를 작업해야 한다는 점에서 매우 큰 문제점에 부딪칠 수 있다.
소스코드를 여러 명이 동시에 보면서, 소스코드를 수정해야 하는데 이러한 작업은 깃(GIt)과 같은 협업 관리 도구가 없으면 쉽지 않다.
깃(Git)은 여러 명이 병렬적으로 개발을 할 수 있게 해준다는 점에서 프로젝트 개발 속도를 매우 빠르게 해줍니다.
실제로 아래와 같이, 리눅스를 포함해서 다양한 오픈소스 프로젝트들은 수천 명이 넘는 개발자가 포함되어 있는데, 이들의 작업 내역을 어떻게 효과적으로 관리할 수 있는지를 깃(Git)을 제대로 배웠을 때 바르게 이해할 수 있습니다.
무엇보다 깃(Git)을 사용할 때 얻을 수 있는, 개발자의 현실적인 장점은 포트폴리오 관리에도 용이하다는 것이다.
깃 허브(Git Hub)에 자신이 작업한 프로젝트를 나열하여, 얼마나 주기적으로 프로젝트를 관리하고 있는지 모두 드러나기 때문이다.
깃을 사용하지 않는 경우
깃을 사용하지 않으면, 소스코드를 USB에 담아서 다른 사람의 컴퓨터로 옮기는 방식 등으로 프로젝트를 공유해야 한다.
그러면, 수정한 내역이 다른사람에게 즉각적으로 전달이 안 되기 때문에 동시에 프로젝트를 작업하기는 어렵다.
혹은 깃 대신에 서브버전(Subversion)을 사용할 수 있다.
줄여서 SVN이라고도 부르는 이것은 Git이 활발하게 이용되기 이전에 많이 사용되었던 협업 관리 도구이다.
SVN은 기본적으로 중앙 서버가 존재한다는 점에서 Git과는 차이점이 존재하며, SVN자체도 오픈소스라는 특징이 있다.
깃을 사용하는 경우
앞에서 나온 SVN은 각 컴퓨터가 중앙 서버처럼 사용하는 컴퓨터로부터 파일을 다운로드 받아 이용하는 방식이다.
깃(Git)은 중앙 서버의 개념이 없으며 중앙 서버처럼 사용하는 컴퓨터가 있다고 하더라도, 그 서버가 망가졌을 때 다른 컴퓨터로부터 소스코드를 복구할 수 있다는 특징이 있기 때문에 깃을 사용한다.
깃의 장점
분산적인 개발
효율적인 개발
비선형적인 개발
변경 이력 보장 |
'개발' 카테고리의 다른 글
[GIT] git 저장소에 반영하기 (0) | 2021.02.17 |
---|---|
[GIT] git의 동작원리 (0) | 2021.02.17 |
[GIT] 오픈소스의 개요 및 오픈소스 활동을 하는 이유 (0) | 2021.02.17 |
[GIT] git 설치 및 사용법 익히기 (0) | 2021.02.17 |
Eclipse 설치 (0) | 2021.02.16 |