상세 컨텐츠

본문 제목

[Django스터디 #1] Git과 Github기초

DJANGO스터디

by qkrtnals 2023. 10. 30. 18:02

본문

1.GIT과 GITHUB란?

Git : 파일의 변경사항들을 여기저기 어디서나 관리할 수 있는 기술

Github : Web service로 Git을 사용할 수 있는 원격 공간, 저장소 제공

2.GIT작동방법

git의 프로젝트에 담겨 있는 데이터들은 일종의 스냅샷이라고 볼 수 있음
파일 자체를 저장한다기보다는 수정 내역을 저장 이전과 달라진 것을 갱신해줌
git init 
  : '나 이제 이 폴더에서 git이라는 기술을 사용할거야' 라고 컴퓨터에게 말해줌
=현재 폴더를 git 저장소로 변환 (최초 1회만)
git add

  : 스테이지 영역에 파일을 올리기

=파일을 원격 저장소에 추가

git commit 
   : 로컬 저장소에 저장을 하기
-> 저장하는 것 : git add 했던 파일의 변경 상태

=파일의 변경사항을 저장소에 스냅샷으로 기록

git log
  : 내가 버전관리 해두고자 했던 파일들의 기록

=commit한 기록들을 볼 수 있다

git push

  : 인터넷에 내 컴퓨터에 저장해놨던 변경사항들의 기록과 파일들을 올려 남들이 다 볼 수 있게 함

= 해당 작업이 다 끝났을 때 사용, 원격 저장소에 해당 변경사항들이 github에 업로드 됨

 

3.용어 정리

로컬,local : 내 컴퓨터

원격,리모트,remote : 깃허브 사이트

이슈, issue : 작업을 하기 전 "내가 ~를 할거다"작성

풀리케,피알,PR,pull request : 내컴퓨터에서 작업을 다 끝내고 "나 ~작업했어"라고 사이트에 올리는 것

 

4.사용법

1) 깃허브 사이트에서 repository 생성

2) code라고 있는 버튼 클릭 + URL 복사
3) 내 컴퓨터 바탕화면에 폴더 생성
4) 윈도우 기준 해당 폴더를 우클릭 -> Git Bash Here클릭
5) 해당 만든 폴더 안에 미리 만들어준 원격에 있는 저장소 내용을 내 컴퓨터에 다운
         git clone "아까 2)에서 복사한 URL"

6) ls -al : 내 폴더 안에 어떤 파일들이 있는지 보여줌
   만약 폴더 안에 .git이라는 파일이 없다면 git init
   master라는 표시가 보인다면
     git checkout main

7) git status : 변경사항이 생긴 파일 알려줌
        untraked files -> commit이 안된 파일
   git add . : 내 로컬 저장소에 파일을 올려주기 전인 스테이지에 올려주기
   git commit -m "적고 싶은 내용" : 내 로컬 저장소에 파일 올려주기

8) git push origin main
      : 원격저장소의 main브랜치에 commit한 파일을 push하기

5.Issue 올리기

1) 깃허브의 내 이름 repository들어가기

2) 왼쪽 위 Issues클릭
3)  new Issues 클릭
4) get started 클릭
5)  #뒤에 숫자 기억

6) 4. 진행

 

6. Pull Request올리기

1) cmd창에서 push를 하기
2) 깃허브 페이지에서 compare&pull request 클릭

3) create pull request 클릭
  +  file changed에 들어가면 코드를 자세하게 볼 수 있음 => 협업에서는 코드리뷰라고 부름
4) 코드리뷰 + merge

 

7.가장 많이 쓰이는 명령어

git remote add <url>
  : 내 컴퓨터에 있는 파일을 깃허브의 repository랑 연결할 때 사용
git clone<url>
  : 내 컴퓨터에 해당 url에 있는 프로젝트를 내 컴퓨터에 다운
git init
  : 로컬 git 저장소를 설정

git status
  : 현재 작업중인 파일의 상태를 확인
git add
 : 변경사항이 생긴 저장하고 싶은 내용들을 스테이지에 올림
git commit
  : 스테이지에 올린 것을 저장함
-> commit을 하기 시작하면 commit 기록이 남아서 commit했던 시점들로 이동 가능
git push

 : 저장한 것들을 github에 올림
git pull
  : github에 있는 내 파일들과 내 컴퓨터의 파일들의 상태가 다를 경우 pull을 해서 github에 있는 파일들을 내 컴퓨터로 덮어씌움
git log
  : commit했던 이력들을 확인할 수 있음

+)리눅스 명령어
cd : 원하는 폴더로 이동하는 명령어

 ls : 해당 폴더에 어떤 파일들이 있는지 보여주는 명령어

 touch : 파일을 생성하는 명령