Github

2022. 3. 3. 11:23Study/etc

Github?

깃허브는 분산 버전 관리 툴인 깃저장소 호스팅을 지원하는 웹 서비스이다. 루비 온 레일스로 작성되었다. GitHub는 영리적인 서비스와 오픈소스를 위한 무상 서비스를 모두 제공한다. 2009년의 Git 사용자 조사에 따르면 GitHub는 가장 인기있는 Git 저장소 호스팅 서비스이다.

 

 

 

 

1. Github 가입, 프로젝트 생성하기

 

1-1. https://github.com/ 에 접속하여 회원가입 후 로그인한다

1-2. 사이트 좌측 상단에 있는 [New repository] 를 클릭

 

1-3. Repository name 칸에 저장소의 이름을 적고, Description 칸에 저장소에 대한 간략한 설명을 적음
public : 원격 저장소에 올라갈 소스가 무료(오픈소스)
private : 원격 저장소에 올라갈 소스가 유료

옵션을 public으로 선택한 후 [Create repository] 버튼 클릭

 

1-4. 생성하면 remote주소를 알려준다.

https://github.com/aluvy/project1.git 생성됨

 

echo "# project1" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/aluvy/project1.git
git push -u origin main

 

 


 

 

2. Github연결 후 Push하기

 

2-1. git remote

이제 다시 명령 프롬프트를 켜서 프로젝트 폴더로 갑니다. git remote가 바로 원격 저장소를 관리할 수 있는 명령어입니다. git remote add origin https://github.com/[이름]/gitExample로 origin이라는 이름으로 원격 저장소 주소를 등록합니다. 이제부터 origin이라는 이름을 사용하면 방금 전에 우리가 만든 저장소에 접속할 수 있습니다. (굳이 origin이라고 안 하고 다른 이름으로 해도 됩니다.) 만약 origin이라는 원격 저장소를 지우고 싶다면 git remote remove origin하면 됩니다.

$ git remote add origin https://github.com/aluvy/project1.git

 

2-2. 연결상태 확인

$ git remote -v

제대로 연결되었을 때 위와같이 2줄이 나옴

 

 

$ git status  => 현재 로컬폴더와 git과의 싱크 상태를 체크

$ git add .   => 로컬폴더와 git repository 간에 변경된 파일들을 모두 Tracking 한다

$ git commit -m "master-인덱스페이지 추가" => 인식할 수 있는 commit을 달아준다

 

 

 

 

2-3. git push

이제 원격 저장소와도 연결했으니 원격 저장소에 commit을 저장해봅시다. git push origin master 해보세요. origin은 원격 저장소 이름이고, master은 현재 사용하는 컴퓨터의 브랜치 이름입니다. 전 강좌에 on branch master 이라는 메세지를 보셨죠? 브랜치는 조금 있다 배우니까 지금은 master가 현재 commit이 저장된 곳이라고만 알아두세요.

로그인 하라고 뜰텐데 아까 만든 깃허브 계정으로 로그인 하면 push가 완료됩니다.

$ git push origin master

$ git push origin master  => 실제로 Git에 PUSH (또는 $ git push origin +master)

master = branch이름

 

 

 

push 된 것을 확인

 

 


 

 

Github에 계속 업데이트 하는법

 

1. 추가할 파일 더하기
     git add .

 

2. 히스토리 만들기
    git commit -m "first commit"

 

3. Github로 올리기
    git push origin master

 

*내 컴퓨터에 소스코드를 업데이트를 하고 싶으면 이 세개의 스텝만 계속 반복하면 됨.

 

 

 


 

깃허브로 팀 프로젝트 하는 방법

 

깃허브에 있는 소스파일을 pc로 다운 받을때... (clone)

 

깃허브의 code 버튼을 클릭하고 깃허브 주소를 복사한다

https://github.com/aluvy/project1.git

 

명령프롬프트를 열고 해당 프로젝트를 저장할 폴더로 이동한다

c:\bini>git clone 깃허브주소 (폴더이름)

ex)   c:\bini>git clone https://github.com/binijjang/sample1.git  binijjang

git clone https://github.com/aluvy/project1.git

 

project1이 복제됨

 

 

프로젝트가 클론 된 경로로 이동
    c:\bini>cd binijjang

-  c:\bini\binijjang>code . 
   - vscode로 이동하고 해당 프로젝트 폴더가 열리고 clone 된 파일들을 볼 수 있다

 

 

 

 

 

 

 


- index.html  파일을 수정한다

- 파일을 깃허브에 push 한다
   -vscode에서 터미널을 연다.  터미널 창의 오른쪽 상단에 +옆에 팝업메뉴를 클릭하고 Git bash를 선택한다
 
   $ git status
   $ git add .
   $ git commit -m "bini first commit"
   $ git push origin master   (*주의... 이리하면.. 혼난다~~ 겁니~~)

 

 

 

Git에서 내(sub) 브렌치(branch)만들기
   *vscode 왼쪽 아래에 보면 bini_branch로 바뀐걸 알 수 있다. 여기를 클릭하면 해당 branch로 이동할 수 있다

  $ git checkout -b '브렌치이름'  (해당 브렌치를 생성하고 그 브렌치로 이동)

   $ git checkout -b 'sub1_branch'      (새로운 branch 를 생성한다 )
   $ git push origin sub1_branch         (새로운 branch로 깃허브에  push한다 )

 

 

 

- 깃허브에 가보면 
   - 상단에  bini_branch had recent pushes less than a minute ago 메시지를 볼 수 있다
   - 메시지 우측에 compare & pull request 버튼을 클릭한다
   - Open a pull request  에서 요청글을 입력하고 하단에 요청버튼을 클릭한다
   - 상단 탭메뉴에 Pull requests 가 생성된다  (마스터에 갈수있게 허락을 요청합니다~~~)

 

 

 

 

 

 

 

 

 

 

 

- 해당 프로젝트에 master branch로 이동한다(마스터)
   - 상단탭 메뉴에 Pull requests  를 클릭한다 
   - 요청한 코드가 OK이면 하단의 Merge pull request 버튼을 클릭한다 (해당 코드가 마스터의 코드로 합쳐진다)
   - Confirm merge 버튼을 누르면 해당 코드가 마스터의 코드로 합쳐진다
   - 상단 탭메뉴 <code> 로 이동하면 bini first commit 으로 바뀐걸 볼 수 있다

 

 

 

 

 


- 마스터에서의 동기화(고참!!)
     $ git add .      (작업한 내용을 add)
     $ git commit -m "second commit"
     $ git pull origin master   (최신 내용을 가져온 후)
     $ git push origin master (작업한 내용을 github에 올린다)

 

 

 

 

 

 

 

git pull

git pull은 다른 사람이 PR을 통해서 코드를 업데이트했거나, 아니면 Github를 통해서 commit했을 때(Github를 통해서도 간단한 commit을 할 수 있습니다) 그 내용을 클라이언트로 내려받는 명령어입니다. git pull origin master 하면 origin의 내용이 master로 복사됩니다.

git pull을 할 때는 깃허브의 유저이름과 비밀번호를 쳐야하는 경우가 많습니다. 매번 비밀번호를 치기 귀찮다면 git config --global credential.helper 'store --file 경로'하면 됩니다. 해당 경로에 비밀번호가 저장된 파일이 생성됩니다. 단, 파일로 저장되는만큼 보안에 취약하기 때문에 주의해야 합니다.

 

 

가져올 폴더 생성
$ git init
$ git remote add origin  https://github.com/가져올git.git
$ git pull origin master  => 원격저장소에 파일을 로컬저장소로 가져온다

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'Study > etc' 카테고리의 다른 글

디자인패턴 : MVC  (0) 2022.10.14
PWA와 하이브리드앱  (4) 2022.04.27
Git  (0) 2022.03.02
Service worker Navigation PreLoad  (0) 2022.01.21
SNS API 연동  (0) 2021.12.22