반응형
GitHub
분산 버전 관리 툴인 Git 저장소 호스팅을 지원하는 웹서비스로 영리 목적 서비스와 오픈소스를 위한
무상 서비스를 모두 제공
(2019년부터 private 소스들도 무료 업로드 가능)
특징
- GUI
Git이 텍스트 명령어 입력 방식인데 반해, GitHub는 GUI 제공 - 오픈소스 기여
전세계에서 진행되는 오픈소스 프로젝트가 많이 모여있어 이에 참여하고 오픈소스에 기여할 수 있는 기회가 있음 - 소스제공 편의
GitHub를 이용해 자신이 작성했던 코드 그 자체를 곧바로 제공 가능 - 자체 Git 서버 보다 GitHub 선호 추세 (오픈소스 성지)
용어
- Fork
다른 사람의 저장소를 복사하는 기능 - Pull Request
포크한 저장소를 수정해 다시 원본 저장소에 병합해달라는 요청을 보내
사용자 사이의 상호작용을 일으키게 하는 기능 - Issues
저장소 안에서 사용자들 사이의 문제를 논의하는 기능 - Wiki
저장소와 관련된 체계적인 기록을 남기는 기능
저장소 구분 | 특징 |
공개 원격 저장소 (public) |
- 저장소 관리자, 협업자 이외에는 쓰기 권한이 없음 - GitHub 사용자라면 누구나 읽기 권한과 포크 권한 있음 - GitHub 사용자 누구에게든 소유권을 이전할 수 있음 |
비공개 원격 저장소 (private) |
- 관리자가 지정한 협업자만 접근해서 다룰 수 있음 - 지정한 협업자에게만 Fork 기능이 열려 있음 |
상호작용을 위한 Git 명령어 | ||
내용 복사 | Git clone | 원격 저장소의 모든 내용을 로컬 저장소로 복사 |
원격 저장소 연결 | Git remote | 로컬 저장소를 특정 원격 저장소와 연결 |
원격 저장소에 내역 제출 | Git push | 로컬 저장소의 내용을 보내거나 로컬 저장소의 변경 사항을 원격 저장소로 보냄 |
원격 저장소와 비교 | Git fetch | 로컬 저장소와 원격 저장소의 변경 사항이 다를 때 이를 비교 대조하고 git merge 명령어와 함께 최신 데이터를 반영하거나 충돌 문제 등을 해결 (병합X) |
원격 저장소와 동기화 | Git pull | Git remote 명령을 통해 서로 연결된 원격 저장소의 최신 내용을 로컬 저장소로 가져오면서 병합 (Git push와 반대 성격의 명령어) 어떤 내용이 병합되면서 바뀌게 되는지 가시적이지 않음 |
상호작용을 위한 Git 명령어 - git clone
- GitHub의 원격 저장소로부터 cloning data를 받음
- 인증해야 될 경우 GitHub의 아이디, 패스워드 입력
상호작용을 위한 Git 명령어 - git push
- README.md 파일 추가 및 내용 수정
- README.md를 로컬 저장소에 add & commit
- README.md를 원격 저장소에 push
상호작용을 위한 Git 명령어 - git push
$ git push kosat --all 입력하니 왼쪽 사진과 같은 창이 나타났다.
Sign in with your browser 버튼을 눌러 진행하면 오른쪽 사진과 동일하게 연결된다.
상호작용을 위한 Git 명령어 - git fetch & pull
- Pull의 경우 어떠한 부분이 변동되어 병합되었는지 세세히 알 수 없으므로
fetch로 원격저장소의 commit을 가져오고 로컬 저장소에서 확인 후 수동으로 병합 추천
- Git pull을 실행하여 원격 저장소의 내용을 가져와 동시에 병합
- Branch 확인 후 git merge [space bar] [tab] 명령으로 병합 대상 확인
반응형
'교육' 카테고리의 다른 글
인공지능 GPT-4 웨비나 (AI 산업화 역사) (0) | 2023.06.02 |
---|---|
chatGPT 세미나 내용 정리 (Open AI ChatGPT 활용 분야와 생성형 AI) (0) | 2023.05.31 |
Git & GitHub 실무 활용 (Git 설치 및 용어 정리) (0) | 2023.05.26 |
Git & GitHub 실무 활용 정리 (기본용어 / Branch 종류) (0) | 2023.05.26 |
비즈니스 성장을 위한 AI 트랜스포메이션 (SK 생성형 AI 토탈 서비스 런칭) 웨비나 (0) | 2023.05.17 |