일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Database
- rnn
- colab
- ChatGPT
- 크롤링 개발
- GoogleDrive
- Machine Learning
- Powershell
- Rocky Linux
- suricata
- VSCode
- 국가과제
- OSS
- 고등학생 대상
- Spring Boot
- Github
- ICT멘토링
- API
- C언어
- Python
- Resnet
- 코딩도장
- LINUX MASTER
- git
- KAKAO
- Docker
- cloud
- 인터넷의이해
- Spring
- Kubernetes
- Today
- Total
코딩두의 포트폴리오
OSS - 05_원격 저장소와 GitHub & Git 본문
다른 커밋으로 이동하기
git log - 지금까지 만든 커밋 확인
git checkout xxxx - 이동하고 싶은 커밋의 앞자리 커밋 아이디 입력
git checkout - - 최신 커밋으로 이동
클라우드 서버 서비스
원격 저장소와 GitHub
GitHub
Git 원격 저장소를 제공하는 대표적인 서비스
프로젝트 진행을 원활하게 하는 여러 도구 제공
다양한 분야의 사람들이 모여 협업할 수 있는 공간 - 프로그래밍, 디자인, 글쓰기, 3D 모델링 등
GitHub 이점
전 세계 많은 오픈소스 프로젝트가 모여 있고, 참여하고, 기여할 수 있는 기회
개발자는 자신이 작성한 코드를 곧바로 제공 가능
기획자가 준비한 기획 문서 공개
GitHub에서 할 수 있는 것
- 가입
- 프로젝트 참가
- 프로젝트 개설
- 개설 프로젝트와 로컬 Git 저장소 사이 연동
- 문제 해결
- Github 가이드
원격 저장소 생성
외부에서 접속해 사용하는 저장소
로컬에서 작업한 Git 프로젝트 저장소가 외부에 있는 것
원격 저장소 기능
- 포크(fork): 다른 사람의 저장소를 (내 깃허브 계정으로) 복사하는 기능
- 폴 리퀘스트(pull request = push): 포크한 저장소를 수정해 다시 원본 저장소에 병합해 달라는 요청을 보내 사용자 사이의 상호 작용을 일으키게 하는 기능
- 이슈(issues): 저장소 안에서 사용자들끼리 문제를 논의하는 기능
- 위키(wiki): 저장소와 관련된 체계적인 기록을 남기는 기능
저장소 생성 화면
새로 생성된 저장소
포크(fork)
다른 사람의 원격 저장소를 내 계정으로 복사하기
[실습] jQuery 프로젝트 포크하기
검색된 화면의 오른쪽 위에 Fork 버튼 클릭
오른쪽 옆의 숫자는 지금까지 포크된 수를 의미
원본 원격 저장소는 수정할 수 없지만, 포크된 저장소는 마음대로 수정 가능
포크가 완료된 결과
GitHub 원격 저장소의 구조
브랜치 또는 태그 선택
선택된 브랜치로 체크아웃됨
저장소 파일 목록
- Clone: 원격 저장소를 클론할 때 사용하는 주소 정보를 알려줌. 문장의 링크를 클릭해서 HTTPS 이외에 SSH, 서브버전에 맞는 주소로 변경도 가능
- Open with ... : GitHub 전용 클라이언트 프로그램을 사용해 클론할 때 클릭하면 됨. 전용 클라이언트가 설치되어 있지 않다면 클라이언트 프로그램 다운로드 웹 페이지로 이동
- Download ZIP: 원격 저장소의 전체 파일을 압축 파일 형태로 다운로드할 수 있음. 만약 어떤 프레임워크의 전체 파일을 담은 저장소라면 다운로드해서 다양한 곳에 응용해 사용 가능
GitHub 원격 저장소의 특징
비공개 원격 저장소와 공개 원격 저장소 특징
원격 저장소의 사용자별 권한
- 일반 사용자는 저장소 관리자가 협업자로 지정하거나 소유권을 이전하지 않는 한 원격 저장소에 권한 없음
- 소유권을 이전하게 되면 소유권을 이전한 원래 원격 저장소 관리자는 공헌자가 됨
GitHub는
- 현재 서비스 중인 거의 모든 Git 원격 저장소의 모범이 됨
- 자체 Git 서버를 구축하기보다 GitHub 서비스를 이용
주요 Git 명령어
Git clone
원격저장소의 내용을 로컬 저장소로 가져오는 명령어
Fork vs Clone (*구분)
- Fork: GitHub 안에서 원격저장소를 복사하는 작업
- Clone: GitHub에서 로컬 환경으로 복사하는 작업 내가 생성한 원격저장소를 내 컴퓨터와 연결해서 복사 포크한 원격저장소를 내 컴퓨터와 연결해서 복사
1. 클론하려는 원격저장소(ex: study)의 주소를 복사
https://github.com/son50/study2
2. 로컬 PC에서 Git Bash 실행 후, 아래 명령 실행
[참고] Git 로컬저장소 삭제
Git remote
로컬 저장소와 원격 저장소를 연결하는 명령어
협업을 하기 위해서는
- 빈 원격 저장소를 만들고 협업을 책임지는 사람이 기본 프로젝트 구조를 만든다.
- 협업하는 사람 모두가 빈 원격 저장소를 클론해서 본인의 작업을 한다.
빈 원격저장소 생성
URL 복사
연결 명령어 사용법
[참고] 연결 삭제의 예: git remote rm origin
로컬 저장소 git_tutorial에서 원격 저장소 command_hello에 연결
Git push
명령어 사용법
git push 원격저장소별칭 로컬브랜치이름
로컬브랜치 이름에 --all을 사용하면 로컬의 모든 브랜치를 의미
원격저장소에 로컬저장소의 브랜치와 같은 이름의 브랜치가 있으면 해당 브랜치 생성 / 없으면 새 브랜치를 생성
만약 같은 이름의 브랜치가 있는데 서로 내역이 다르면 push 명령을 거부
- 즉, 백지 상태의 원격저장소에 로컬저장소의 작업을 push 해야함
- 원격저장소에 README.md 파일이 있으면 안됨
로컬 작업 내역을 원격 저장소에 올리는 명령어
Token 생성
Github 홈페이지 오른쪽 상단 프로필 메뉴에서 settings 선택
왼쪽 제일 아래 Developer Setting 메뉴 선택
왼쪽 아래 Personal access tokens 메뉴 선택
생성된 토큰 복사
GitHub 웹 사이트 저장소를 새로 고침하여 내용 확인
로컬에 변경 내역 만들기
'Open Source Software' 카테고리의 다른 글
OSS - 09_GitHub로 협업하기 (0) | 2024.04.21 |
---|---|
OSS - 07_Git 고급 (0) | 2024.04.21 |
OSS - 04_Git 설치 & 기본 (0) | 2024.04.13 |
OSS - 03_버전관리시스템과 Git (0) | 2024.04.07 |
OSS - 02_OSS 활용 (0) | 2024.04.02 |