'git'에 해당되는 글 2건

  1. 2015.10.20 Git 설치
  2. 2015.10.11 git 란

Git 설치

카테고리 없음 2015. 10. 20. 11:26 |

centOs 7에  Git 설치 하기



1. 설치

sudo yum install git



2. yum 설치

sudo yum groupinstall "Development Tools"

sudo yum install gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel



2.2 git 소스를 통한 설치

다운로드

wget https://github.com/git/git/archive/v2.6.2.tar.gz -O git.tar.gz


빌드 makefile 생성

make configure [enter]

 ./configure --prefix=/usr/local [enter]


3. 버전확인

git --version


4. 설정

git config --global user.name "Your Name"

git config --global user.email "you@example.com"



끝~!

Posted by 양승아
:

git 란

개발자료 2015. 10. 11. 18:50 |

Git 에 대해서


git 는 형상관리중 하나로 흔히 알고 있고 svn 과 비슷하지만, svn  과 다른점이 있다.

지금 부터 svn 과 비교하여 설명해 보겠다. 


svn 은 

작업공간 ----저장소 

git 는 

작업공간 --스테이지영역--로컬저장소--원격저장소


svn 은 commit 하면 저장소에 소스를 저장하여 지원한다.

git 는 commit 하면 로컬저장소에 저장이된다. 원격 저장소라는 곳에 연결되어 소스를 공유한다.

commit 하기 전에 스테이지영역(인덱스)  추가해야 된다!


만약 빌드를 svn 에 로그인페이지, css 파일을 동시에 빌드했다고 가정할때

로그인페이지 빌드를 미루게되어 revert 해야되면  css파일까지 빌드전으로 복구해애되는 단점이 있다,


git 은 빌드해야되는 파일만 스테이지 영역에 추가하고( git add) 로컬저장소에 commit  하면 된다,

부분적으로 commit할 필요 없는 경우에는  git commit -a 으로 모두 동시에 커밋하면 된다.

commt 마치면 다른사람에게 소스공유 하면된다, 이땐 git push  명령어 사용한다.


내 작업을 올리는데 오류가 발생하여 다른 사람들이 작업한 내용을 먼저 받아야 할때는 

git pull 명령어 사용한다, (원격저장소로부터 내려받기 fetch + 내려받은 데이터를 병합 merge)


branch!! 에 알아보자

svn 은 전체 디렉토리 구조를 내려받아야하고 직접 디렉토리를 이동해야된다. 병합도 위치와 리비전을 명시하고 다소 복잡하다.

git 은 전체 디렉토리로 내려받을 필요없고 브랜치전환시 작업파일들이 실시간으로 변경된다.


브랜치 만들기

git branch<name>

git checkout<name> 


브랜치 지우기

git branch -d <name>


브랜치 병합

git checkout master 

git merge branch


브랜치 목록

git branch

git branch --no-merged

git branch --merged (merge가 되었는지 안되었는를 구분)



rebase?

rebase 는 merge와 동일하게 하나의 브랜치를 다른 브랜치로 병합하는 기능이다. 

단 rebase는 작업 히스토리를 다른 브랜치에 차례대로 적용시킨다.


svn  은 최종 작업을 merge 하는데

     b1          b2          b3         b4

a   o ---------------------------o


b   o----------o-----------------o


rebase 는 

     b1          b2          b3         b4

a   o ---------v--------v--------o


b   o----------o--------v--------o


공동작업에서 깔끔한 히스토리를 계속 유지해주고 싶다면 rebase를 적극적으로 사용하는 것이 좋다.


 그럼 svn 과 차이점은 ?

* 로컬저장소가 존재한다.

* 커밋 이전에 스페이지영역에 추가하는 과정이 있다.

* git 은 각각의 버전을 스냅샷으로 저장한다


git의 특징들!!

* 작업중 브랜치를 변경해야 하는데 커밋하기 애매할때, 간단히 저장해 둘 수 있음.

* 커밋을 순서를 변경하거나 커밋 메시지 심지어는 커밋한 파일도 변경할 수 있음

* 로그를 자기 입맛대로 포맷팅 할수 있음

* 이전 커밋에 추가 할수 있음










'개발자료' 카테고리의 다른 글

CentOS6.0 아파치 설치  (0) 2016.04.08
Posted by 양승아
: