시행착오 스토리/Git
Git을 위한 적극적인 첫 걸음 - 설치 및 사용
by 양벨라
2017. 9. 10.
Git이란?
형상관리도구(Configuration Management Tool) Git
- git은 효율적인 소스코드의 관리를 위한 도구이다. 혼자 프로젝트를 진행했을 때는 그냥 클라우드의 느낌으로 많이 사용해왔다. 입사를 하고 여러 명이 서버 소스를 수정하고 브랜치 기능을 본격적으로 사용하면서 ' 아, 이래서 필요하구나 ' 를 느꼈다. 그리고 다양한 환경에서 손쉽게 이용할 수 있도록 공부하고 이렇게 기록한다.
- SVN도 함께 사용하고 있는데 SVN과 git은 모두 소스를 관리하기 위한 형상 관리 도구이지만, 살짝 다르다. git은 분산이라는 단어에 집중해야 한다. 하나의 소스를 각각 로컬에서 수정하고 관리할 수 있기 때문에 중앙 집중식 관리 방식인 SVN과는 방식이 다르다. 또한 git은 새로운 기능을 추가하고자 하는 경우 브랜치를 통하여 코딩을 하고 테스트하고 Merge하는 방식으로도 개발이 가능하다.
- 아예 처음 다루는 경우 github를 통해 아이디를 생성해야 한다.
Git 설치
Git 최초 설정
사용자 정보 설정
$ git config --global user.name (ID)
$ git config --global user.mail (Email)
- git은 commit 때마다 이 정보를 사용하게 되며 한번 설정되면 변경할 수 없다고 한다.
- 프로젝트마다 사용자를 다르게 하고 싶다면 --global 옵션을 제외하고 실행하면 된다.
사용자 설정 및 편집기나 최초 설정할 부분이 있지만 나는 막상 사용하지 않았으므로 패쓰--
다른 부분이 알고 싶으면 git-scm을 읽어보면 많은 도움이 된다.
설정 확인
$ git config --list
간단한 Git 사용법
1. Repository 생성
$ git init
$ git remote add (RepositoryName) http://github.com/(ID)/(RepositoryName).git
- init은 로컬에 새롭게 저장소를 만드는 명령
- init을 한 경우 원격 저장소를 로컬에 정의해주어야 하기 때문에 remote add를 함께 실행해준다.
$ git clone http://(ID)@github.com/(ID)/(RepositoryName).git
- 원격에 있는 저장소를 복제해서 로컬에 만들기 위한 명령
git clone은 1. 디렉토리 생성, 2. git init, 3. git remote add, 4. git fetch, 5. git checkout 의 역할을 한번에 처리해준다고 보면 된다.
2. 파일 추가
$ git add (파일이름)
- 선택한 파일을 추가하는 명령
$ git add *
- 모든 변경사항을 추가하는 명령
3. 저장소에 확정
$ git commit -m (변경에 대한 설명)
4. 원격 저장소에 반영
$ git push origin (브랜치명)
5. 원격 저장소의 변경내용 가져오기
$ git pull
- 원격 저장소의 내용을 가져와 로컬에 있는 내용에 반영시키는 명령
fetch와 merge를 한꺼번에 해줌