“Git 기초 특강” 정리 1회차

SJ.CHO·2024년 8월 26일

필수 리눅스 명령어

  • pwd(print working directory) : 현재 작업하고있는 폴더(위치)를 보여 달라는 뜻.

    '~' 는 home 위치를 가르키며 데스크탑(바탕화면)보다 상위위치.

  • ls(list) : 내 폴더안에 폴더&파일의 목록을 표시

  • ☆ ls -a(list all) : 숨긴파일 까지 전부 표시

  • cd 폴더명(change directory) : 포커스를 폴더위치이동

    cd .. 상위폴더로 이동.
    cd/폴더명/폴더명 으로 더 깊게 혹은 더 위로갈수있음

  • mkdir 폴더명(make directory) : 새폴더 생성, 현재경로에생성

  • touch 파일명.형식자 : 새파일 생성, 현재경로

    파일의 날짜와 시간을 변경하는 명령어.

Git & Github 개념

  • 파일을 복사하거나 새로생성하지 않고 하나의 폴더내에서 변경점(버전관리)를 사용가능

  • code를 새로생성(업데이트)하거나 과거로 돌아갈수 있음(Roll back)

  • ☆Git : 코드 변경점 기록

  • Github : 백업과 공유가 가능한 온라인코드저장소

Git 필수명령어

  • git init : 코드관리를 시작하는 명령어(초기화),
    프로젝트 시작 전 한번만 사용.
    '정확한 프로젝트 폴더(경로) 위치에서 입력해야함' 상위폴더에서 할수록 범위가 커져 기록량이 많아짐. (성능,보안 이슈 발생)

  • git add & commit : 코드를 저장하는 명령어
    add를 통해 저장파일을 지정 후 commit을 통해 저장작업 실행

    Ex) git add 파일명
    git commit -m "메세지"

  • git status : 파일 저장여부 확인 명령어

  • git add . : 현재 나의경로에 모든변경사항을 지정

  • git log : 저장내역 확인 명령어 커밋메세지가 같이 표기

  • git push : github에 변경 사항 반영

    git push origin main(브런치명)

Git 협업+충돌 해결하기

  1. 초기프로젝트 코드 작성
  2. github 레포지토리 생성
  3. 코드 github에 업로드
  • git clone : github내에 올라와있는 코드 복사해오기

    git clone <깃허브 주소> .

  • git pull : 다른사람이 변경한 코드내 코드에도 가져오기

    git pull origin main(브런치명)

  • 가장 첫 명령어를 사용하면 가능.

충돌 해결하기

  • 같은 파일 같은 줄에 코드가 겹칠경우 발생.
  • 코드에대한 충돌관리는 개발자가 알아서...
  • 충돌해결도 코드의 수정이기에 다시 push를 통해 재업로드 필요.

주의할점

  • git init을 할 경우 .git이라는 숨겨진 파일이 생성됌. 이로인해 git clone 명령어가 제대로 동작 안할 경우가 생김.
  • git clone 의 경우 자동으로 .git 폴더를 만들어주기 때문에 2단으로 작업을 할 이유가 없다.

Git branch 란?

  • 개발자들이 SW 코드를 작성할때 동일한 코드를 기반으로 동시에 다양한 작업을 할 수 있게 만들어주는 기능. 각자의 독립적인 작업공간에서 작업후 나중에 하나로 합쳐 새로운 버전을 생성.

장점

  • 매우 가볍기 때문에 브랜치를 만들고 이동하는것이 자유로움.
  • 다른 버전관리 프로그램에 비해 속도가 빠르다.
  • Merge 작업을 할때 이전커밋에 대한 정보를 알고있으므로 작업이 쉬움.

Git branch 관리 명령어.

  • git branch 브랜치명 : 브랜치를 생성하는 명령어.

    $ git branch RB_1.0 master

  • git branch -D (브랜치) : 브랜치 삭제 명령어

    $ git branch -D utility

  • git branch -m [브랜치명][새로운 브랜치명] : 브랜치명을 변경

    git branch -m master mymaster

  • git checkout (브랜치) : 브랜치 이동 명령어 (포커스 이동)

    git checkout gh-pages

  • git checkout -b (새로운 브랜치) : 브랜치 생성 및 체크아웃을 한번에 하는 명령어.

    git checkout -b utility

  • git branch : 현재 포커싱되고있는 브랜치 확인

    git branch
    *master
    gh-pages

profile
70살까지 개발하고싶은 개발자

0개의 댓글