본문 바로가기

Project Management/Git & Github

(26)
[Chapter 3] repository 협업(2) - branch 생성, commit in Sourcetree 지금부터는 우리가 배운 브랜치 개념을 소스트리에서 직접 적용해 실습을 진행해 보도록 하겠습니다. 우리는 git의 사용법을 알아보면서 ME와 John 두 사람이 파일 작업을 하는 상황을 가정하고 로컬/원격 저장소 생성 및 소스트리 적용을 진행했었습니다. 아래 과정까지 완료했었죠? [Chapter 2] Sourcetree 처음 사용해보기 - repository 생성, origin과 master 지금부터는, 앞서 만들었던 로컬 저장소와 github에 생성해 연결한 repository를 CLI가 아닌 소스트리를 통해서 실행해 보도록 하겠습니다. 일단, 기본적으로 소스트리 다운로드 및 설치와 Atlassian 계 nozeroslope.tistory.com 지금까지의 상황을 정리해 보겠습니다. · 작업자는 ME와 ..
[Chapter 3] repository 협업(1) - branch 개념 기본적으로 git은 두 사람 이상이 협업하는 것을 가정하고 사용하게 됩니다. 물론 개인이 버전 관리 차원에서 사용하기도 하지만 오늘 배울 브랜치(branch)의 개념을 도입하게 되면 하나의 작업물을 두 사람 이상이 '동시에' 수정하고 업데이트하는 협업이 가능해집니다. 앞서 살펴본 예시에서 우리는 [readme.txt], [index.html], [style.css] 세 개의 파일을 작업한다고 가정했습니다. 이제 두 사람(ME, John)이 세 개의 파일을 협업하여 완성하도록 작업을 시작했습니다. 작업의 타임라인은 아래와 같습니다. 오후 3시 - ME가 [readme.txt], [index.html] 코드 작성 : 'ME ver.1 커밋' - 동시에 John이 [style.css] 파일 작성 오후 4시 -..
[Chapter 2.5] git의 기본 작동 원리 - 파일 관리 status 이제까지 git을 통해서 파일들을 수정하고, 그것을 원격 저장소에 업데이트하는 과정을 살펴보았습니다. 여기에서 add, commit 등의 몇 가지 프로세스를 거치게 되는데 이 과정에서 git을 통해 관리되는 파일의 상태(status)에는 여러 가지 변화가 일어나게 됩니다. 이번 아티클에서는 이 파일들의 단계별 status를 살펴보고, 어떤 식으로 동작하는지를 확인해 보겠습니다. 우선 git에서 파일이 관리되는 status는 다음과 같이 총 4개가 있습니다. 이제 차근차근 이 각각의 스테이터스가 무엇을 의미하는지 살펴보겠습니다. - 추적 안됨[untracked] - 스테이지됨[staged] - 수정 없음[unmodified] - 수정함[modefied] 추적 안됨[untracked]은, 한 번도 커밋되지 ..
[Chapter 2.5] git의 기본 작동 원리 - stage, commit, 그리고 스냅샷 이번 아티클에서는 본격적으로 브랜치를 활용한 협업 방식에 대해서 알아보기 전에, git의 기본적인 작동원리와 파일 추적 프로세스에 대해서 알아보고자 합니다. 지금까지 간단하게 알아본 사용법 만으로는 git의 다양하고 복잡한 기능들을 이해하기에는 한계가 있기 때문이죠. ○ 스냅샷 방식 우선, git의 작동방식은 기본적으로 스냅샷(snapshot) 방식입니다. 이 스냅샷 방식이 어떻게 동작하는지, 그리고 스냅샷 방식이 아닌 경우에는 어떤 식으로 동작하는지에 대해 텍스트 파일에 변화가 생겼을 때 버전을 기록하는 방식으로 구분해 보겠습니다. git에서 채택하고 있는 스냅샷 방식은 하나의 파일에 변동이 생겼을 때, 파일의 상태 "전체"를 그대로 저장해 비교합니다. 반대로 SVN 같은 시스템에서는 델타(delta)..
[Chapter 2] Sourcetree 처음 사용해보기 - repository 생성, origin과 master 지금부터는, 앞서 만들었던 로컬 저장소와 github에 생성해 연결한 repository를 CLI가 아닌 소스트리를 통해서 실행해 보도록 하겠습니다. 일단, 기본적으로 소스트리 다운로드 및 설치와 Atlassian 계정 생성 등의 작업은 진행한 것으로 가정하겠습니다. 혼선을 방지하기 위해서, Atlassian 계정과 유저 명은 github와 동일하게 설정하였습니다. 또한, 설치 과정에서 git을 연결할 때 사용할 계정을 묻는 스텝이 나오면 우리가 앞서서 git과 연결했던 github 계정과 Username 정보를 입력해 줍니다. 소스트리에서는 이제 해당 github 계정에 있는 repository 리스트를 자동으로 불러오게 되거든요. Sourcetree | Free Git GUI for Mac and W..
[Chapter 1] github 처음 사용해보기(4) - repository clone과 pull 앞선 과정을 통해 우리는 github에 repository를 생성하고, 여기에 로컬에서 생성된 파일과 커밋들을 연결한 다음 연동까지 진행하였습니다. 현재 우리는 우리가 지정한 로컬 저장소(폴더)에서 변경된 커밋의 정보를 github의 repository에 전송하여 자유롭게 관리할 수 있는 상태가 되었습니다. 이제, 다음 상황들을 실습해 보겠습니다. 일단, 우리는 한 대의 PC를 사용하고 있지만 새로운 협업 개발자 "John"이 참여했다고 가정하겠습니다. 새로운 협업 개발자 John은 우리가 작업한 리소스들을 일단 자신의 PC(여기서는 우리의 다른 폴더)로 다운로드하여야 합니다. 그러고 나서, John이 개별적으로 작업을 한 다음 그 변경 사항을 커밋하고 - 그 변경사항을 우리가 업데이트하여 반영하는 것까..
[Chapter 1] github 처음 사용해보기(3) - repository 생성과 등록 이제까지 본인의 PC내에 생성한 폴더에서 파일을 관리했습니다. 물론 git을 사용하는 주요 목적은 공동으로 사용할 수 있는 저장소를 관리하기 위함이니, 이 상태로는 충분하지 않습니다. 이제 github를 이용해 본격적으로 원격저장소(repository)를 생성하고, 로컬 저장소의 파일을 연동해 보도록 하겠습니다. ○ 신규 repository 생성 우선 github.com으로 이동해, 본인의 계정으로 로그인하여 우측 상단의 메뉴를 통해 [New Repository]를 실행해 새로운 원격저장소를 생성해 봅시다. 이렇게 원격저장소를 생성하면, 방금 생성한 본인의 깃허브 repository 주소를 확인할 수 있게 됩니다. 이때 본인의 계정과 위에서 지정한 repository name을 사용하게 됩니다. http..
[Chapter 1] github 처음 사용해보기(2) - commit, github 연동 ○ 기본 github 계정 연동 앞선 아티클에서 우리는 "로컬 저장소"로 사용할 폴더를 하나 생성했고(비어있는 상태), 거기서 git init을 통해 기본적인 git 사용 상태로 만들어 두었습니다. [.git]이 생성되었다는 의미죠? 우선 이 상태에서, github.com에서 생성한 계정과 user name을 미리 연동해 보겠습니다. git bash를 통해 해당 폴더에서 git을 실행하고, 터미널에서 다음과 같이 입력해 줍니다. $git config —global user.email "github 계정 이메일" $git config —global user.name "github username" 위 큰따옴표 사이에 이메일주소와 유저 네임을 작성하고 입력해 줍니다. 완료한다고 하더라도 별도의 메시지는 출력..