소스트리는 협업 과정에서 필요한 git에서의 commit, push, pull, branch, merge등의 기능을 IDE처럼 툴로 관리할 수 있게 해주는 프로그램이다.
협업과정에서 github와 git은 거의 필수적인데 일반적으로 cmd에 git명령어를 입력하는 과정은 복잡하고 어려우므로 SourceTree와 같은 프로그램을 사용하면 이 과정을 더욱 쉽게 할 수 있다.
1. SourceTree 사용하기
sourceTree를 사용하려면 github와 같은 원격 저장소가 필요하다. 따라서 github 아이디를 만든 후 new repository를 만들어준다.
모두 체크를 하고 자신의 개발 환경에 맞는 버전이나 언어를 선택하면 완료가 된다.
2. SourceTree와 github 연결하기
우리는 github와 SourceTree를 연결하고 싶으므로 gitclone과 같은 작업을 수행하여야한다. 따라서 상단의 clone버튼을 눌러준다.
github repository 주소를 복사 붙여넣기 하게 되면 SourceTree에서 자동으로 git 저장소라는 것을 판별하여 알려주게 된다.
그 다음 자신의 컴퓨터에 저장될 로컬 저장소의 위치를 지정한 뒤 코드를 git clone해준다.
나는 위의 주소와는 다르게 c드라이브에 바로 practicenew폴더를 만들어 그 곳에 clone을 해주었다.
clone을 해주면 github에 있던 모든 정보들이 로컬 저장소(pc)에 저장되게 된다.
3. SourceTree사용법
github와 git의 가장 큰 사용성은 내가 수정한 내용을 실시간으로 다른 협업자들도 알 수 있게 하는 것이다. 따라서 commit, push, pull과 같은 기능이 있는 것이다. 우선 간단한 c++ 파일을 작성하여 SourceTree를 통해 Github에 올려보는 과정을 진행하겠다.
1.c++ 파일 작성
간단한 코드를 로컬 저장소 위치에 저장하고 나면 SourceTree에 다음과 같은 화면이 뜨게 된다.
스테이지에 올라가지 않은 파일들을 스테이지에 올리게 되면 commit, push, pull 과 같은 작업들이 가능해진다.
모두 스테이지에 올리고 관리해보겠다.
commit은 로컬 저장소에 저장과 같은 역할을 한다. 우리는 다른 협력자들 과의 협력이 중점이므로 github와 같은 원격 저장소에 공유를 하는 것이 주 목적이다. pull과 push를 통해 이 작업을 수행할 수 있는데 pull작업은 말 그대로 내가 모르는 협력자들의 원격저장소에 저장 되어있는 수정사항들을 내 로컬 저장소로 가져오는 역할을 하고 push는 내가 작업한 것을 원격저장소(github)에 올리는 역할을 하게 된다.
commit창을 누르게 되면 위와 같은 화면이 뜬다. 또한 commit을 하고 싶다면 commit message를 작성한 후 커밋 버튼을 누르면 된다.
커밋을 하게 되면 저장이 되게 되는데 이를 원격 저장소에 올리고 싶다면 push라는 과정을 거쳐야한다.
push버튼을 누르게 되면 commit한 과정 중 push하지 않았던 것들이 원격 저장소 github에 올라가게 된다.
github의 realease branch를 확인해보자
5. SourceTree pull
다른 협업자가 올려놓은 코드를 내 로컬 저장소로 가져오고 싶다면 pull이라는 작업을 수행하면 된다.
사진 삭제
pull과 같은 작업을 수행하면 밑의 사항을 확인하고 pull하면 된다.
pull을 하면 만약 branch가 잘못 되어있다면 충돌이 나서 프로그램이 crush가 날 수도 있다.
따라서 충돌 여부를 확인하고 pull을 해주면 다른 협업자가 올려놓은 코드를 나의 로컬 저장소로 가져올 수 있다.
위의 과정들을 통해 많은 사람들과 협업과정을 더욱 간소하게 할 수 있다. 또한 git은 버전 관리에 용이하다.
6. SourceTree를 통해 history 확인하기
sourceTree에서는 프로젝트가 어떤 과정을 통해 branch가 나눠지고 다시 main(master)branch에 merge되었는 지를 나타내준다.
우리가 연습용으로 만들어본 repository에서는 master branch에 release branch하나 추가 한 것 하나 뿐이라 아래와 같은 간단한 gitflow 그림이 나오지만 나중에 더 복잡한 프로젝트를 진행하게 되면 내가 어떻게 main코드에 branch를 나눴고 merge했는지 history가 나오게 된다
'협업 툴(git, source tree)' 카테고리의 다른 글
깃허브 organization 코드 등록하기 -1 (2) | 2022.03.31 |
---|---|
BitBucket(SSH등록) (0) | 2022.03.22 |
git 초기화 하기 (0) | 2022.03.13 |
git -fork 협업 flow (0) | 2021.10.11 |
SSH 키 소스트리를 통해 생성하고 등록하기 (0) | 2021.09.09 |
댓글