[Git] Github 개요
💡 해당 내용은, 생활코딩 영상을 기반으로 작성하였습니다.
Github란?
- 원격 저장소를 제공해줄 뿐만 아니라, 오픈 소스 프로젝트의 작업장 역할을 할 수 있는 서비스
이미 존재하는 프로젝트를 끌고와서 작업해보기
원격 저장소 보러가기
- git의 오픈 소스 프로젝트, 즉 원격 저장소 보기 : GitHub 사이트에 가서 git 이라고 검색해서 git으로 감 (https://github.com/git/git)
- 다른 사람의 코드를 볼 수 있음
- Commits : 커밋 횟수 확인 가능
- Branches : 브랜치 개수 및 종류 확인
- Code Overview : Branch 별 용도 확인
- Contributors : 프로젝트의 소스 코드를 작업할 수 있는 사람들
- README.md : 프로젝트에 관한 소개
- Watch : 해당 프로젝트를 몇명이 볼 수 있는지
- Star : 몇 명이 좋아요 했는지
- Fork :
- 해당 버튼을 누르면 이 프로젝트가 나의 프로젝트로 복제되어 마음대로 사용할 수 있는 기능
- 주소를 확인해보면 git/git 에서 본인닉네임/git 으로 변경되는 것 확인 가능
- 코드의 영향력을 평가하는 지표
레포지토리 클론하기
- 레포지토리 클론하기
- Clone or download > Clone with HTTPS : 표시된 주소를 Copy
- 로컬 PC에 디렉토리 만들기
- 💫
git clone [복제하고자 하는 원격 레포지토리의 주소] [원하는 디렉토리 이름]
: 원격 저장소의 코드를 로컬 저장소로 가져올 때의 명령어로서, 이를 통해 원격 프로젝트 소스를 해당 디렉토리에 복제시킴 cd gitsrc > ls -al
: 파일들 확인하기git log
: 커밋 로그 확인하기git log —reverse
: 거꾸로 로그 확인, 즉 가장 첫번째 버전(커밋 로그)을 바로 볼 수 있음- Commit Id 복사 >
git checkout 복사한아이디
>git log
: 첫번째 소스코드를 보러가기 위해 커밋 아이디를 통해 브랜치를 이동해서 로그 확인하기
Github 원격 저장소 만들기
원격 저장소 생성 방법
- github에 로그인하기
- Repositories > New repository
- Public vs Private
- Public : 오픈 소스, 즉 무료 소스
- Private : 결제 정보가 나오는 개인 소스
- Initialize this repository with: > Add a README file
- 프로젝트에 관한 설명을 만들겠다는 옵션
- Create a repository : 원격 저장소 생성
- Public vs Private
- Code > HTTPS 주소 : 생성한 레포지토리의 고유한 주소로서 해당 주소를 통해 Clone 할 수 있음
로컬 저장소에서 원격 저장소로 업로드 하기
- …or push an existing repository from the command line : 로컬 저장소에서 작업하고, 원격 저장소로 작업 내용을 올리는 상황
mkdir gitfth
>cd gitfth
: gitfth 이라는 디렉토리 생성 후 이동git init .
>vim f1.txt
>git add f1.txt > git commit -m ‘1’
: 프로젝트 생성 후 내부에 파일을 생성하고 stage에 올린 뒤 커밋git remote add origin https://github.com/rileyko/gitfth.git
: 현재 로컬 저장소에 원격 저장소를 연결(add) 시킨다, 그리고 이 주소는 ~ 에 있다. 이 주소의 약어는 origin으로 지정한다.git remote
- origin이라는 원격 저장소가 생긴 것 확인 가능
- origin : 로컬 저장소와 연결되어있는 메인이 되는, 즉 주로 동기화되는 원격 저장소
git remote -v
- 원격 저장소와 주소 리스트 상세보기
git remote add friend https://github.com/rileyko/gitfth.git
:- git은 여러개의 원격 저장소를 우리의 로컬 저장소에 저장할 수 있음
git remote remove friend
: 등록된 원격 저장소 삭제하기git branch -M main
: main branch를 main 이란 이름으로 쓰겠다는 옵션git push -u origin main
:push
: 로컬 저장소를 기준으로 하여 원격 저장소로 보낸다(업로드 시킨다). 즉, 현재 체크아웃되어있는 로컬 브랜치(origin)를 master 로 동기화시킴-u
: 현재 로컬 브랜치와 원격 저장소의 마스터 브랜치를 연결시켜 그 다음에 자동으로 동기화시키는 옵션 (한번만 진행하면 됨)git push
: 한번 작업한 이후로는 지정을 해두었기 때문에-u
옵션 필요 없음
- ❗️403 Error 날 경우 :
git remote set-url origin https://유저네임@github.com/유저네임/레포지토리주소.git
- 해당 주소에 관한 접근 권한이 없어서 발생하는 오류
- 토큰 발급해 로그인 : github 본인 프로필 > settings > developer settings > personal access token > generate a key 해서 토큰 발급 받고 PWD로 입력 하면 해결됨.
원격 저장소에서 로컬 저장소로 복제 하기
: 다른 컴퓨터에서 작업하는 경우
- Github 내의 레포지토리 페이지 > Clone or download 버튼 클릭 > Clone with HTTPS 에 보이는 주소 Copy
git clone [Copy한 주소] .
- . : 현재 디렉토리 라는 뜻
git remote -v
: 이미 origin 저장소가 연결되어 있는 것과 그 별칭 확인 가능
원격저장소와 로컬저장소를 이용하는 2가지 상황
- 원격 저장소를 만들고 이를 복제해 로컬 저장소를 만든 다음에 로컬 저장소에서 작업하는 상황
- 로컬 저장소에서 작업하고, 원격 저장소로 작업 내용을 올리는 상황
Leave a comment