깃허브

전 세계 개발자들이 설계도를 모아두고 함께 고쳐 쓰는 '초대형 클라우드 도서관'이에요.

정의 깃허브(GitHub)는 컴퓨터 프로그램의 설계도인 코드를 인터넷에 저장하고, 여러 사람이 함께 작업할 수 있게 돕는 웹 서비스예요. 코드의 모든 수정 기록을 안전하게 보관하고 전 세계 개발자와 실시간으로 공유할 수 있어요.

내 컴퓨터의 타임머신을 인터넷에 올리는 곳

문서 작업을 할 때 '진짜최종.hwp', '진짜진짜최종.hwp'처럼 파일 이름을 계속 바꿔가며 저장해 본 경험이 누구나 있을 거예요. 소프트웨어를 만드는 프로그래밍 세계에서는 '깃(Git)'이라는 전문 프로그램을 써서 모든 수정 내역을 타임머신처럼 꼼꼼하게 기록해요.

하지만 깃은 내 컴퓨터 안에서만 작동하는 도구예요. 만약 컴퓨터가 고장 나거나 분실되면 그동안 쌓아온 소중한 기록이 한순간에 사라질 수 있죠. 이때 내 컴퓨터에 저장된 깃의 타임머신 기록을 안전한 인터넷 클라우드에 백업하는 보관소가 바로 깃허브예요.

깃허브에 코드를 올려두면 집이나 카페, 회사 어디서든 인터넷만 연결되면 작업을 이어갈 수 있어요. 혼자만의 컴퓨터에서 벗어나 전 세계 개발자와 연결되는 출발점이 되는 셈이에요.

깃(Git)의 로컬 수정 내역을 깃허브(GitHub) 클라우드에 백업하는 흐름도 인터넷 백업 (Push) 내 컴퓨터 (Git) 버전 1·2·3 로컬 기록 깃허브 (GitHub) 클라우드 안전 보관소

부딪히지 않고 함께 일하는 협업의 마법

여러 사람이 하나의 문서를 동시에 고치다 보면 남이 쓴 글을 지워버리는 실수가 일어나기 쉬워요. 깃허브에서는 원본 코드를 그대로 보존한 채 나만의 복사본인 '가지(브랜치)'를 만들어 각자 안전하게 작업할 수 있어요.

조금 더 정확히 말하면, 내가 완성한 새로운 기능을 원본에 합치고 싶을 때 '풀 리퀘스트(Pull Request)'라는 정식 제안을 올려요. 다른 팀원들이 내가 작성한 코드를 꼼꼼히 검토하고 승인해야만 하나의 완성된 원본 프로그램으로 안전하게 합쳐져요.

이러한 체계 덕분에 수백 명의 개발자가 하나의 거대한 프로그램을 동시에 만들어도 코드가 꼬이지 않아요. 만약 합친 뒤에 문제가 생기더라도 과거의 정상적인 시점으로 언제든 되돌릴 수 있답니다.

깃허브 브랜치와 병합 과정 다이어그램 원본 코드 독립된 가지 (브랜치) 검토 및 승인 (PR) 동료의 개별 작업 완성본 병합

개발자들의 SNS이자 오픈소스의 중심지

깃허브는 단순한 코드 저장소 역할을 넘어 전 세계 개발자들이 모여드는 거대한 광장이에요. 소셜 미디어처럼 다른 사람의 작업물을 팔로우하고, 마음에 드는 프로젝트에 '스타(별)'를 누르며 소통할 수 있어요.

특히 누구나 자유롭게 코드를 보고 발전시킬 수 있는 오픈소스(Open Source) 문화의 심장이에요. 리눅스 운영체제나 최신 인공지능 프로그램 같은 세계적인 기술들도 깃허브를 통해 전 세계 수많은 자원봉사자의 손을 거쳐 진화하고 있어요.

개발자들은 깃허브에 차곡차곡 쌓인 작업 기록을 자신의 이력서나 실력을 보여주는 포트폴리오로 활용해요. 매일 코드를 작성할 때마다 달력에 초록색 잔디가 심어지듯 네모 칸이 채워지는데, 이는 개발자의 성실함과 실력을 증명하는 멋진 상징이 돼요.

🤔 흔한 오해

✕ 오해

깃(Git)과 깃허브(GitHub)는 이름이 비슷하니 같은 프로그램이다.

✓ 사실

깃은 내 컴퓨터 안에서 코드의 변경 기록을 관리하는 소프트웨어 도구이고, 깃허브는 그 기록을 인터넷 클라우드에 올려 다른 사람들과 공유할 수 있게 해주는 웹 서비스예요.

🧺 일상에서 만나요

1 전 세계 개발자들이 깃허브에 모여 리눅스나 인공지능 프로그램을 함께 무료로 개발하고 개선해요.
2 개발자가 취업할 때 깃허브 주소를 제출해 자신이 작성한 코드와 협업 경험을 포트폴리오로 보여줘요.
💡 그러니까 한마디로

깃허브는 코드의 수정 기록을 인터넷에 안전하게 저장하고, 전 세계 사람들과 오류 없이 협업할 수 있게 돕는 플랫폼이에요.