#TIL wecode Bootcamp Day 9(git /Github)

Jung Hyun Kim·2020년 6월 3일
0

wecode

목록 보기
8/42

개발 협업의 필.수. ☝🏼 Git 과 Github 를 이해해보자

git/githubphoto

Explain git control in a photo

git/add commit process
사전 스터디때 깃 관련 작성했던 포스팅(매우기초)

👉🏼Basic Git Commands

  • git init
    : terminal 에서 git 을 통해 과정관리를 할 파일로 위치하게 한 뒤. git init을 입력하여 git repository 를 생성해 준다. 프로젝트 작업이 깃에 의해 감지되고 작업된다.

  • git add
    : 수정된 파일을 중간 저장하는 의미이다. (working directory에서 staging area로 옮기는 과정이라고 생각하면 됨)
    : commit하기직전 add 해주는 것

  • git commit
    : add한 파일을 commit으로 추가하면서 local repository에 저장한다.

  • git diff
    : 제일 최근 commit 한 버전과 비교하여, 어떤 change가 있었는지 확인하는것이고 git add. 한 이후에는 (staging area)에 있으면 git diff 만 하면 보여지지 않는다.

    git diff  [filename] 
    //  compare the working directory with local/remote repository
    
   // staging area에 있는 변화까지 보려고 한다면 아래 명령어를 작성하면 된다.
   git diff --staged[fillname]
  • git status
    : 현재 깃 상태를 나타내주는 명령어, 어떠한 파일이 modified되고 , staged 되었는지 전체 상황을 보여준다.

  • git log
    : commit한 내역들을 보여주는 커밋히스토리 라고 볼 수 있다

  • git rm
    : 원하는 파일을 git repository에서 삭제할때 사용한다.

  • git mv
    : 원하는 파일을 git repository상에서 이동시킬때 사용된다.

    // hello.html을 lib directory로 이동시켜라
  • git branch
    : 브랜치를 생성할때 사용하는 명령어, 이름처럼 프로젝트에서 가지를 뻗어나가 새로운 커밋을 쌓을 때 사용한다.

  • git checkout
    : 생선된 새로운 브랜치를 이동시킬때 사용되는 명령어이다.

👉🏼 git branching


(간단하게 push 가 밀다이니 내 파일을 밀어 넣다, pull은 당기다 이니, 그 파일을 내 파일로 당겨오다 라고 생각할 수 있다!)

여러 개발자와 협업을 위해서 가장 중요한 브랜칭의 순서

  1. 먼저 새로운 branch를 만들어서, 새로운 branch로 이동한다 (git checkout 내 브런치이름)
    브런치 이름은 아래와 같은 방법으로 작성이 편하다
feature/signup [feature/기능설명] 
  1. 내 branch안에 파일을 생성해서 수정 혹은 있는 파일을 수정한 후 깃에 추가(git add .git commit -m"코멘트" )

  2. git log 하면 수정했던 내용이 나온다.

  3. 다시 git checkout master 를 통해 master branch로 가서하면 기존의 master branch에 나의 branch 의 병합이 가능하다.

    git checkout master( 내 마스터로 간다) 
    git merge feature/signup (내 브랜치) 
    git push origin master  (기존의 오리진 master에 업로드) 

👉🏼Forking and Pull Requests

: 예를들어 깃 repository A 에 올라와있는 코드를 fork 하게 되면 클론되어 내 repository B 로 저장 되게 된다. 해당 코드를 만지고 기존 repository A 에 추가하려면 repostitory A에게 pull requests를 보내고, A merge를 approve 해주면 그 코드가 repository A에 저장된다.

💆gitignore

:예민한 정보를 올리지 않기 위해 중요하다!!(ex. API Keys, passwords, and etc)
: 숨기고 싶은 예민한 정보를 gitignore 파일을 만들어 그안에 넣어주면 끄읕!
: #을 통해 내부에 코멘트를 작성할 수 있다. #뒤에 text를 작성하면 그것은 주석?개념으로 볼 수 있다.

touch .gitignore //gitignore 붙여서 사용해야함!

open .gitignore // 

이렇게 하면 .gitignore 파일이 열리고 그안에 숨기고 싶은 파일을 직접 아래와 같이 작성하면 된다.

secrets.txt
.DS_Store
#

그후에 git add . git status를 순서대로 실행해 확인 해보면?

폴더에 있는 파일 + gitignore 파일( secrets.txt, .DS_Store) 이 git 에 추가된다.

git commit -m "initial commit" 을 local repository에 추가할 수 있다.

이후 remote repository 에 저장해도 sensitive data는 저장되지 않는다!

*숨기고 싶은 파일들은 (https://github.com/github/gitignore) 의 library 를 통해 gitignore pre-built template 찾아서 file-extension을 copy & paste 할 수 있다

  • 즉 gitignore template 에 보면 어떤 파일에선 이러한 파일을 gitignore에 넣는다고 해놓았기 때문에, 내가 파일이름만 맞게잘 작성 해놓았다면 자동적으로 그 파일을 필터링 해서 git add .를 해도 추가되지 않는 다는 뜻!

👩🏼👩🏼 git cloning

-remote repository 에서 나의 working directory 로 git clone 하는 것!

-깃허브에서 원하는 깃허브 repository 에 가서, clone or download버튼 을 클릭 하고 terminal 로 가서, git clone + 카피된 url 하면 나의 desktop에 저장된다!

아직은 많이 어색하지만 사용하다보면 익숙해 지리라 믿고 ㅜㅜ 꾸준히 반복해서 개념익히는거에 집중 해야 겠다!!

profile
코린이 프론트엔드 개발자💻💛🤙🏼

0개의 댓글