(몇일 전 엠바카데로 MVP인 Ian Barker가 Git과 Github에 대해 델파이, RAD스튜디오 개발자들에게 꼭 필요한 만큼만 설명했습니다)

원본 비디오와 발표에 사용한 자료는 이 블로그에서 볼 수 있습니다: 

https://www.codedotshow.com/blog/using-git-source-code-control-with-delphi-and-rad-studio-all-the-reasons-why-and-everything-you-need-to-know/ 

 

요약하면 다음과 같습니다.

 

[이 자료/비디오을 왜 봐야 하는가]

 

소스를 안전한 곳에 보관하고, 변경 사항을 잘 기록해두지 않을 이유가 없다.

보물을 안전한 곳에 보관하지 않을 이유가 없다.

 

그런데 Git을 사용해보려고 인터넷에서 검색을 하면 정보의 쓰나미가 몰려온다.

이 자료와 비디오는 델파이와 RAD 스튜디오 개발자가 바로 시작할 때 꼭 필요한 것만 알려준다.

일단 이것만 알면 지금 바로 그리고 충분히 개발자의 보물인 코드를 안전하게 보관하고 손쉽게 관리할 수 있다.

 

깃허브 같은 곳에는 좋은 델파이 소스가 오픈 소스로 제공된다.

이 소스들은 델파이 File > Open From Version Control 메뉴에서 바로 개발자 컴퓨터로 가져와서 볼 수 있다.

 

[설명되는 주요 기술]

 

- 소스 변경 관리: Git, Subversion(SVN) 등 많은 기술이 있지만, Git이 널리 사용되므로, 대표로 Git을 설명.

- Git은 소스의 변경 사항을 특정 컴퓨터 안에 저장한다. 이것을 원격지나 클라우드에 보관하면, 화재, 도난 등에서 보다 안전하고 협업이 쉽다.

크라우드 소스 저장소: Github, GitLab, Bitbucket 같은 저장소가 있다. Github가 많이 사용되므로, 대표로 Github를 설명.

- Git 사용 도구 (개발자 컴퓨터에 설치하는 프로그램): Github Desktop, SourceTree, TortoiseGit이 있다. 대표로 Github Desktop을 설명.

 

- Commit: Git에 변경 내용을 기록하여 과거와 현재를 오가며 비교하고 롤백, 롤포워드 한다.

- Push: Git(로컬 컴퓨터)에 있는 내용을 Github(클라우드 저장소)에 반영한다.

- Fetch: Push와 반애이다.  Github(클라우드 저장소)에 있는 내용을 Git(로컬 컴퓨터)에 반영한다.

- Comment: Git이나 Github에서 변경 요지를 기록한다. 8년전에 이때 내가 왜 이 변경을 했는지를 설명해 놓았다면, 지금도 파악할 수 있다.

- 기타: Pull (또는 Pull Request): 위의 Push와 Fetch와는 다르게 보는 것이 좋다. Github에서 변경에 대한 허락을 구하는 강제된 에티켓이다.

 

이 비디오는 매우 좋습니다.

예를 들면, Github Desktop에서 Delphi 옵션을 사용하여 불필요한 파일까지 관리하는 것을 쉽게 방지할 수 있습니다.

혹시 영어로 되어 있어서 불편하다면, 아래와 같이 이미 데브기어에서 "잘" 정리해둔 글도 있습니다.

(Git 사용 도구 외에는 큰 차이가 없습니다. 데브기어의 글에는 TortoiseGit을 설명하지만, Ian Barker는 Github Desktop을 설명합니다)

보다 많은 델파이 개발자들이 자신들의 보물을 잘 간직하고, 코드 변경을 걱정하기 않기를 바랍니다.

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 17911
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 16256
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 18904
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 24502
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 25880
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 21239
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 41828
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 177123
783 [REST API] 다음 Kakao > 로컬 > 주소검색 연동하기 [2] 험프리 2017.09.18 6388
782 [따라하기] 인공지능 오목게임(4) - 바둑판 그리기 [2] file 대화마을 2017.09.18 2163
781 [따라하기] 인공지능 오목게임(3) - 디자인 구성하기 file 대화마을 2017.09.14 1676
780 [따라하기] 인공지능 오목게임(2) - 최종결과물 [2] file 대화마을 2017.09.14 1640
779 [FMX] 폼의 높이를 애니메이션으로 변경하기, 툴바를 끌어 폼 이동하기 험프리 2017.09.12 555
778 [따라하기] 인공지능 오목게임(1) - 만들기 [2] file 대화마을 2017.09.12 5546
777 [업데이트][핫픽스][10.2.1] 상속된 VCL 폼의 디스플레이 배율 미적용 버그 해소 file 험프리 2017.09.11 478
776 TListView 행별로 배경색 설정 및 글꼴변경하기 험프리 2017.09.08 1718
775 [FireDac] FDConnection 데이터베이스 Connection 설정 file 김원경 2017.09.01 4630
774 이 달의 기술자료 - 2017년 09월 file 험프리 2017.09.01 552
773 [오픈소스] VerySimple.Lua file 험프리 2017.09.01 524
772 [오픈소스] Python for Delphi(P4D) [5] file 험프리 2017.09.01 2002
771 [FMX] 파이어몽키 메시징 시스템을 이용해 프로세스 내에서 메시지를 등록하고 구독하는 방법 file 험프리 2017.09.01 290
770 [VCL] 화면의 특정영역을 확대하는 “돋보기” 기능 구현방법 소개 file 험프리 2017.09.01 999
769 [FMX] 안드로이드 패키지 버전 구하기 튜토리얼 file 험프리 2017.09.01 991
768 [고객사례-원격연동, 모바일, 윈도우] Alpemix - 모바일과 PC 원격 연동 프로그램 관리자 2017.08.24 764
767 델파이의 새 달력콤포넌트 기능향상 및 버그수정.. 나비스 2017.08.18 1236
766 [발표자료] 현대화 vs. 소멸, 여러분의 프로젝트는 어디로 가고 있나요? 관리자 2017.08.17 338
765 [업데이트][10.2 도쿄][릴리즈 1] 10.2 도쿄 - 릴리즈 1이 출시되었습니다. 험프리 2017.08.09 1583
764 QR/바코드 스캐너 앱 샘플코드(ZXing, TFrameStand 사용) [1] 험프리 2017.08.04 3082