Atlassian Sourcetree

변현섭·2023년 7월 17일
0

Github 사용법

목록 보기
11/17

깃허브에 대한 기초가 이제 다들 어느 정도 쌓이셨을 거 같은데요. 이번에는 조금 쉬어가는 포스팅을 준비했습니다. 이번 포스팅에서 소개할 Atlassian Sourcetree는 Git과 관련하여 가장 권위 있는 GUI Tool 중 하나입니다. Sourcetree를 사용하면, Commit, Push, Pull 등의 명령을 CLI가 아닌 GUI 방식으로 간단하게 처리할 수 있게 됩니다.

물론 요즘은 IDE가 워낙 잘 만들어져있다보니, Commit, Push, Pull을 위한 GUI 툴에 대한 수요가 많이 줄었는데요. 저도 IntelliJ나 Android Studio에서 제공하는 기능을 주로 사용하다보니, Source Tree를 사용할 이유가 거의 없다고 생각하긴 합니다. 그래도 Atlassian Sourcetree는 매우 유명한 툴 중 하나이므로, 참고용으로 읽어봐주시기 바랍니다.

1. 소스트리 사용하기

1) 소스트리 다운로드

https://www.sourcetreeapp.com/ 에 접속한다.

② Download for Windows를 클릭한다.

③ 다운로드되는 동안 https://bitbucket.org/ 에 접속하여 BitBucket 회원가입을 진행한다.

④ 다운로드가 완료되면 .exe파일을 연다. 아래와 같은 화면이 나오면 원하는 옵션을 선택하면 된다. 여기서는 건너뛰기를 선택하였다.

  • Bitbucket Server : BitBucket 개별 서버를 설치한 사용자의 경우
  • BitBucket : BitBucket에 회원가입되어 있는 사용자의 경우

⑤ Mercurial을 설치할 것인지 물어보는 것인데, 굳이 필요 없으므로 선택을 해제한다.

⑥ 이름과 이메일 주소를 입력하고 다음 버튼을 클릭한다.

⑦ SSH 키를 불러올지에 대해 물어보는데 SSH 키를 아직 만들지 않았으므로 아니오를 선택한다.

⑧ 아래와 같은 화면이 나오면 설치가 완료된 것이다.

2) 소스트리 사용법

① 로컬은 본인의 PC에서 사용하는 저장소를 의미하고, 원격은 깃허브에 있는 Repository를 의미한다.

② 파일 > 열기 버튼을 눌러 작업하고 있는 인텔리제이 파일을 열면 된다.

③ 그동안의 병합과정이 그래프로 나타난다.

④ Clone 버튼을 이용하여 원격저장소에서 파일을 가져올 수도 있다.

  • 소스 경로 / URL : 원격저장소의 HTTPS 주소
  • 목적지 경로, 이름 : 로컬 저장소 이름(저장할 위치)

⑤ 코드를 변경하면 아래와 같이 commit에 숫자가 표시된다.

⑥ commit을 완료한 후, push도 소스트리를 이용해 진행할 수 있다.

⑦ 또한 fetch와 pull을 이용해 원격저장소에 있는 최신 코드를 가져와 로컬 파일에 자동으로 병합까지 수행할 수 있다. 물론, conflict가 나는 경우는 별도의 처리작업이 필요하다.

2. 소스트리 실습

1) push & commit 실습

① 인텔리제이에서 새 프로젝트 파일을 하나 만든다.

② Git 또는 VCS 탭에서 Github > Share Project on Gihub 버튼을 클릭한다.

③ Github Repository에 본인의 인텔리제이 파일을 public으로 업로드한다.

④ 소스트리에서 파일 > 열기로 방금 생성한 파일을 연다.

⑤ 코드를 임의대로 수정한다. 또 임의로 파일을 하나 생성한다.

⑥ 이제 아래와 같이 커밋할 게 있음을 사용자에게 알려준다. 커밋을 진행하기 위해 모두 스테이지에 올리기 버튼을 클릭한다.

⑦ 커밋메시지를 작성한 후 커밋을 클릭한다.

⑧ 이번에는 push할 게 생겼음을 알려준다. push 버튼을 눌러 push를 진행할 수 있다.

⑨ push가 정상적으로 완료되었음을 확인할 수 있다.

2) pull 실습

① 이번에는 testProject 파일을 Organization Repository에 올려보자. 깃허브 계정을 하나 더 만들어 실습을 진행해보았다.

② 개인 Repository에 올려놓은 testProject 파일을 Organization Repository로 transfer한다. 방법은 아래의 링크를 참조하라.
>> 저번 포스팅

③ 이제 다른 계정으로 접속하여 해당 Organization Repository를 fork한 후 파일을 인텔리제이에서 열어준다.

④ 처음 작성했던 testProject파일을 아래와 같이 수정한 후 Organization Repository로 push한다.

⑤ 이제 Organization Repository에 있는 코드는 최신화가 반영된 코드이고, 내가 fork로 열어준 파일은 최신화가 되지 않은 코드가 된다.

⑥ fork로 열었던 인텔리제이 파일에 들어가 organization Repository의 주소를 org로 등록한다.

⑦ fetch 버튼을 클릭한다.

⑧ pull 버튼을 클릭한다.

  • 원격저장소에서 가져오기에 방금 등록한 org를 넣어준다.
  • 가져오기 위한 원격 브랜치에는 현재 작업 중인 브랜치의 이름을 넣는다.

⑨ pull이 완료되면 변경사항이 적용된 것을 확인할 수 있다. (testProject가 원격저장소에 올린 파일이고, blog가 fork된 개인 Repository에서 클론한 파일이다.)

profile
Java Spring, Android Kotlin, Node.js, ML/DL 개발을 공부하는 인하대학교 정보통신공학과 학생입니다.

0개의 댓글