일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 티스토리챌린지
- java
- 운영체제
- git 설정
- window10 Education
- git pull --rebase
- 취업
- vmware workstation player
- 아임포트
- window11 Education
- Spring Boot
- 취성패
- window10
- 윈도우10 Education
- 오블완
- snake case
- github
- git pull
- window11
- 정처기
- camel case
- 방통대
- ObjectMapper
- 런던뮤지컬
- 소비통장
- 방송대
- git
- json string
- IAMPORT
- 자바
- Today
- Total
홍차의 미로찾기
[github] github 의미와 사용하는 이유 본문
[git/github] git, github설정 프로세스 모음
github이란? (github.com)
git으로 관리되는 프로젝트의 원격 저장소입니다.
git 기반의 프로젝트들을 온라인 공간에서 공유하고 협업하여 소프트웨어를 개발할 수 있게 도와주는 서비스입니다.
github이 가장 많이 사용되며, 이외에도 gitLab이나 bitbucket과 같은 서비스들이 있습니다.
또한 오픈소스의 성지로서 전 세계의 많은 오픈 소스 프로젝트들이 github에서 공유되고 많은 개발자들에 의해 기여받고 있습니다.
왜 github을 사용해야할까요?
1. 효율적인 협업이 가능
가장 큰 이점은 여러 개발자들이 동시에 하나의 프로젝트를 효율적으로 작업할 수 있도록 해준다는 것입니다.
프로젝트 폴더를 일반 클라우드 서비스에 업로드해서 사용할 수도 있습니다. 각 개발자가 필요할 때마다 프로젝트 폴더를 다운받고 수정해서 업로드하는 방식입니다.
하지만 이 경우에는 새로운 업로드 파일에 의해서 기존 파일이 덮어씌워지는 문제가 발생합니다.
반면에, github과 같은 git 원격 저장소는 모든 업로드와 다운로드를 커밋 단위로 주고 받습니다.
각 개발자들이 자신의 수정사항을 업로드하기 위해서는 먼저 원격 저장소의 최신화된 프로젝트 버전을 다운로드받아야 합니다.
이후 자신의 로컬 프로젝트에서 충돌을 해결한 후 원격 저장소에 업로드할 수 있습니다.
이 방식으로 개발자들은 손쉽게 협업할 수 있습니다.
2. 자동화 및 CI/CD 기능
github action 과 같은 기능을 사용하여 빌드, 테스트, 배포 작업 자동화 기능이 존재합니다.
3. 많은 오픈 소스 프로젝트 존재
github은 오픈 소스 프로젝트의 성지로 불립니다.
현재 많은 오픈 소스 프로젝트들이 github을 통해서 코드를 관리하고 협업하고 있습니다. github을 통해서 누구나 오픈 소스 프로젝트에 기여할 수 있습니다.
4. AWS 등 다양한 개발 서비스와의 통합 용이
현업에서 많이 사용하는 AWS, Azure, Slack, JIRA 등과 같은 다양한 개발 서비스와의 통합이 용이하여 개발 맞춤 환경을 설정할 수 있습니다.
github에는 어떤 기능이 있나요?
1. 버전 관리 기능
git 기반 원격 저장소이기 때문에 프로젝트의 변경 내역을 모두 관리할 수 있습니다.
2. 저장소의 역할
public/private 접근 권한이 있는 저장소에서 코드를 관리할 수 있습니다. 코드 뿐만 아니라 이슈나 문서등을 관리할 수도 있습니다.
3. 풀 리퀘스트 (PR, Pull Request)
코드의 변경사항을 메인 브랜치에 병합하기 전에 검토를 요청하는 기능입니다. 해당 기능을 통해 팀원들과 코드 리뷰를 진행하여 개발 품질을 높일 수 있습니다.
4. 이슈 생성/관리
프로젝트 버그, 새로운 기능 요청 등을 이슈로 관리할 수 있습니다.
'프로그래밍 > GIT' 카테고리의 다른 글
[git] 로컬 프로젝트에 여러 원격 저장소 (github reposigory) 연결/조회/해제 (0) | 2024.07.21 |
---|---|
[github] github 레포지토리(repository) 생성하기 (2) | 2024.07.20 |
[github] github 보안 토큰 로그인 - Personal access token (0) | 2024.07.20 |
[git] 브랜치 합치기 (변경사항 통합) - merge, rebase (1) | 2024.07.12 |
[git] git log 명령어와 옵션 - 커밋 히스토리 조회 (0) | 2024.07.10 |