Home Git 6. Xcode에서 Git 사용하기

[Git] 6. Xcode에서 Git 사용하기

Post Date

Modified Date

Category

안녕하세요, 오늘은 Xcode에서 Git을 사용하는 방법을 소개해드리도록 하겠습니다.

Xcode는 macOS의 IDE (Integrated Development Environment ; 통합개발도구) 입니다. Windows에서는 공식적인 C 컴파일러가 존재하지 않고, 리눅스는 개인용 컴퓨터에서 잘 사용하지 않기 때문에 컴퓨터공학 전공자라면 Xcode를 많이 사용합니다. C 언어 뿐만이 아니라 C++, Python 등의 언어도 지원하고, 무엇보다 iOS 앱을 프로그래밍하기 위해서는 반드시 사용해야 하는 도구이기 때문에 사용자층은 꽤 넓다고 볼 수 있습니다.

많은 사용자를 보유하는 만큼 Git 같은 버전 관리 시스템 또한 자체적으로 지원합니다. 지원이라기보다 내장되어있다는 표현이 맞는 것 같습니다. 예전에 Git 설치 포스트를 작성할 때 macOS에서는 Xcode를 설치하면 Git이 자동으로 같이 설치되기 때문입니다. macOS에서 Git이 설치되어 있는지 확인하는 방법은 아래의 포스트를 참고해보시기 바랍니다.

Xcode에서 Git 저장소 생성하기

Xcode의 작업 환경은 위의 스크린샷과 같습니다. 저는 지금 개인적으로 공부하고 있는 강화학습의 예제를 C언어로 구현했는데요, 이 프로그램을 Git을 사용해 관리해보도록 하겠습니다.

가장 먼저 Git 저장소를 생성해야 합니다. 메뉴 막대를 보시면 Source Control 이라는 부분이 있는데, 이 곳을 클릭하면 서브 메뉴가 펼쳐집니다. 펼쳐진 서브 메뉴에서 Create Git Repositories를 클릭합니다.

어떤 프로젝트를 Git 저장소에 저장할 것인지를 물어보는 창이 나옵니다. 저는 현재 한 개의 프로젝트만 활성화 중이라 이 프로젝트를 체크하였습니다. 체크가 끝나면 Create 버튼을 클릭합니다.

Git 저장소를 만들었지만 화면상에는 큰 변화가 없습니다. 사실 딱 한가지 변한게 있는데, 눈치가 빠르시면 왼쪽의 네비게이터 영역에서 프로젝트와 파일에 이상한 알파벳이 붙었음을 알 수 있습니다. 프로젝트에 붙은 M은 Modified의 약자로 최근 커밋 이후 수정되었다는 뜻이고, main.c에 붙은 A는 Added의 약자로 최근 커밋 이후 추가된 파일이라는 뜻입니다. 지금은 커밋을 한번도 안했기 때문에 프로젝트에는 자동으로 M이 붙고, 파일에는 자동으로 A가 붙게 되는 것입니다.

Xcode에서 Commit 하기

Git 저장소를 만들었으니, 이제 커밋을 해보도록 합시다. Git 저장소를 만들 때와 같이, 메뉴 막대에서 Source Control을 클릭한 다음, 펼쳐지는 서브 메뉴에서 Commit…을 클릭합니다.

Commit… 을 클릭하면 광활한 흰 화면이 나오는데, 이 곳은 커밋을 할 때 변하는 부분을 비교해서 보여주는 부분입니다. 저희는 지금 첫 번째 커밋을 하는 것이기 때문에 비교할 부분이 없어 흰 화면만 나오는 것입니다. 아래에 보시면 조그맣게 뭐라고 적은 것을 볼 수 있는데, 이 부분이 커밋 메시지를 쓰는 부분입니다. 커밋 메시지 작성이 완료되면, 하단 오른쪽의 Commit 5 Files 버튼을 클릭합니다.

커밋이 끝나면 화면상으로는 큰 변화가 없지만, Git 저장소를 만들었을 때 네비게이터 영역에 생겼던 M과 A가 사라졌음을 볼 수 있습니다. 변경사항과 추가된 파일이 커밋 되었으므로, 최신 버전이라는 의미입니다.

Xcode에서 원격 저장소로 Push하기

방금 Commit은 로컬 저장소에만 반영된 것입니다. GitHub 같은 원격 저장소에 Push하기 위해서는 먼저 Xcode에서 연결을 해주셔야 합니다. 일단 GitHub의 계정과, 원격 저장소는 이미 만들어놓았다고 가정하겠습니다. 만약 GitHub 계정을 아직 만드시지 않으셨거나, 원격 저장소를 만드는 방법을 모르시는 분들은 아래의 포스트를 참고하시기 바랍니다.

GitHub에서 원격 저장소를 만들었다면 위의 빨간색으로 표시한 원격 저장소의 HTTP 주소를 복사해두시기 바랍니다.

다음으로 Xcode에 자신의 GitHub 계정을 연결해보도록 하겠습니다. 메뉴 막대에서 Xcode를 클릭하면 나오는 서브 메뉴에서 Preferences… 를 클릭합니다.

Preferences… 를 클릭하면 팝업 창이 나오는데, 이 중 두 번째 메뉴인 Accounts를 선택하고, 하단 왼쪽에 있는 + 버튼을 클릭합니다.

연결할 수 있는 계정의 목록이 나오는데, 이 중 GitHub를 선택한 다음 Continue 버튼을 클릭합니다.

로그인 화면이 나오는데, 이 곳에 자신의 GitHub 계정 ID와 비밀번호를 입력한 다음, Sign In 버튼을 클릭합니다.

정상적으로 로그인이 완료되면, 위와 같이 GitHub 계정이 Xcode에 연결된 것을 볼 수 있습니다.

팝업 창을 닫고, Xcode 왼쪽에 있는 네비게이터 바에서 두 번째 버튼을 클릭합니다. 그러면 파일 목록이 나오던 것이 위의 스크린샷처럼 Git 관련 목록이 나오게 됩니다.

네비게이터 바에 있는 목록에서 Remotes에 오른쪽 클릭을 하신 다음, 나오는 메뉴에서 Add Existing Remote…를 클릭합니다.

Add Existing Remote…를 클릭하시면 화면 중앙에 조그맣게 팝업 창이 나오는데, 여기에 복사해둔 원격 저장소의 HTTP 주소를 붙여넣은 다음, Add 버튼을 클릭합니다.

이로써 Xcode와 원격 저장소의 연결은 끝났습니다. Push를 하기 위해 메뉴 막대에서 Source Control을 클릭한다음, 펼쳐진 서브 메뉴에서 Push…를 클릭합니다.

또 조그만 팝업 창이 나오게 되는데, 그냥 Push 버튼을 클릭하시면 됩니다.

이로써 Push가 끝났습니다. 원격 저장소를 확인해보시면 프로젝트의 커밋 내용이 원격 저장소에 복사되었음을 확인할 수 있습니다.

댓글 남기기

Please enter your comment!
Please enter your name here

Duvelix

학부에서는 수학을, 대학원에서는 컴퓨터공학을 전공했습니다. 현재는 컴퓨터공학과 박사과정을 수료하고 보이지 않는 졸업과 싸우는 중입니다.

Popular posts

[KATC] 전문연구요원 훈련소 후기 – 프롤로그

훈련소를 수료하고 돌아온지도 거의 열흘이 지났습니다. 그 동안 밀려있던 일들을 처리하기도 하고 오랜만에(?) 느낀 사회의 자유를 즐기느라 포스트를 작성하지 못했습니다. 당분간은 정기적으로 작성해던 포스트의...

[기계학습] 7. VC Dimension

일곱 번째 챕터에서는 지난 챕터 마지막에 나온 Vapnic-Chervonenkis (VC) Dimension에 대해 배우게 됩니다. 이번 챕터는 4개의 소주제로 나뉘어 있습니다. 먼저 VC Dimension의 정의를 배우고, Perceptron에서의...

[Tip] New 닌텐도 3DS XL vs New 닌텐도 2DS XL

안녕하세요, 오늘 포스트는 New 닌텐도 3DS XL과 New 닌텐도 2DS XL의 차이점을 소개하려고 합니다. 저는 New 닌텐도 2DS XL로 시작을 했고 최근에 New 닌텐도 3DS...

[KATC] 전문연구요원 훈련소 후기 – 1주차

지난 포스트에 이어서 입영심사대부터 1주차 일정을 자세히 적어보도록 하겠습니다. 입영심사대로 가면 사람이 굉장히 많습니다. 인파를 조금만 헤치고 들어가면 주차장 근처부터 조교들이 입영자 외에는 입장할...

[Life Hack] 구글 애드센스 시작하기

구글 애드센스는 구글에서 컨텐츠 제공자들이 수익을 얻을 수 있게 만드는 광고 게제 서비스입니다. 구글 계정을 통해 가입하여, 제공 받은 광고 태그를 블로그나 유튜브에 삽입하면...

Recent comments