ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Git 개념 및 터미널 실습
    공부 !/Git 2020. 7. 9. 13:25
    반응형

    Git 

    항상 최종.py, 진짜 최종.py, 이게진짜임.py 이런식으로 파일을 저장한 경험이 있을 것이다.

    매번 달라진 부분을 일일이 기록하는 것도 귀찮고

    수정하기 전의 상태로 돌리고자하는 변덕이 생길 수도 있다.

     

    git 을 사용하면 이런 일들을 효과적으로 다룰 수 있다 !

    git 이란 프로그램 등의 소스 코드 관리를 위한 분산 버전 관리 시스템 이라고 정의된다.

    아래 git 의 원리를 배우면 왜 효과적으로 다룰 수 있다는 것인지 이해될 것이다.

    GitHub 

    github 은 git 의 웹 호스팅 서비스이다.

    github 을 통해 여러 개발자들이 업로드한 코드들에 쉽게 접근해 볼 수 있다.

     

    이런식의 코드는 어떨까요 ? 라고 제안할 수 도 있어 오픈 소스의 장점인,

    즉 다수의 집단지성이 코드를 더 좋은 코드로 이끌어 낼 수도 있다.

     

    현실적으로 github 을 잘 관리하는 것은 나의 포트폴리오가 될 수 있다.

    우리가 여러 개발자들의 코드를 볼 수 있는 것과 마찬가지로

    우리의 코드 또한 여러 사람들에게 보여지기 때문이다.

    github 에 업로드한 프로젝트를 얼마나 주기적으로 관리하고 코드를 짰는지가 드러나기 때문이다.


    git  굳이 왜 사용할까 ?

     

    git 을 사용하게 되면 앞서 언급한 것처럼 개발 되어온 과정을 한눈에 파악할 수 있다.

    개발 과정 중 특점 시점으로의 복구나, 장애가 발생해도 중앙 저장소의 복원이 가능하다.

    다수와 소스코드를 주고 받을 필요없이, 동시에 작업하는 병렬 개발이 가능하다.

     

    git 의 핵심 원리를 파악하고 주로 사용되는 명령어들을 익히면

    이런 혁명적인 서비스를 사용할 수 밖에 없을 것이다 ! ( 광고 협찬 같은거 아니다 진짜임 ... )

     


    git 원리

    허접하지만 파워 포인트의 도형으로 열심히 만들어보았따 ^^

    git 이 이력별로 저장되는 이유는 staging 이라는 핵심 원리 덕분이다.

     

    working directory 

    작업영역 / 실제 프로젝트 디렉토리를 의미한다.

     

    staging area

    working directory 에서 repository 로 정보 저장 전 준비 영역 이라고 이해하면 된다.

    파일의 상태를 기록, 스테이징 한다라고 표현한다.

     

    repository ( repo )

    저장소, 파일과 폴더를 변경 이력별로 저장해두는 곳을 의미한다.

     

    local repo 개인 pc 에 파일이 저장되는 개인 저장소

    remote repo 원격저장소 전용 서버에서 관리 되는 여러 사람과 공유 가능한 저장소 를 의미한다.

     

    다음 포스팅에 local repo 에서 버전 관리하는 방법에 대해 포스팅 할 예정이다 !


    git 설치

     

    git 을 사용하기 위해서는 먼저 설치를 해야한다

    https://git-scm.com/download

     

    Git - Downloads

    Downloads Mac OS X Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific

    git-scm.com

    자기의 운영체제에 맞춰 가이드를 따라 설치하면된다 !

    이 글은 Windows 기준으로 작성하려고 한다.

    내가 Windows 사용하기 때문이다 ^^ ...

     

     

    설치는 거의 대부분 next 를 누르면 되는데

    위처럼 사용할 에디터를 선택하는 경우 ( 위 경우는 VS code 를 선택했다 )

     

    윈도우에 있는 명령 프롬포트에서도 git 을 쓸 수 있도록 하는 옵션 ( 캡처가 날라갔다 ^^ ... )

    두가지만 잘 선택해주고 넘어가면 된다.


    터미널 실습

     

    터미널, 콘솔, 커맨드라인 다 동일한 의미를 가진다.

    영화나 드라마에서 개발자라하면 검정 화면에 화려하게 적힌 코드들을 본 적이 있을 것이다.

    터미널 실습을 통해 우리도 멋진 배우들처럼 개발자 흉내내 볼 수 있다.

     

    git 을 설치하고 나서 마우스 오른쪽 버튼을 누르면 git bash here 이라는 옵션을 찾을 수 있다.

    옵션을 누르면 검정색 창이 켜지는데 이를 터미널이라고한다.

    터미널이란 컴퓨터에게 명령을 내리는 창을 의미하는데, 명령어를 통해 원하는 작업을 할 수 있다.

    bash 창을 열어 실습을 해보자 !

     

    폴더를 만들어보자 ! mkdir

     

     

    mkdir 폴더명

    ex 라는 이름의 디렉토리 ( 폴더 ) 가 생성된다.

     

    디렉토리 이동 cd

     

    앞서 만든 폴더로 이동하고 싶을때 cd ex 명령어를 치면된다.

    /ex 로 이동한 것을 확인할 수 있다. 

    다시 상위 폴더로 이동하려면 ? cd .. 명령어를 치면 상위로 이동할 수 있다.

     

    파일 생성 touch

     

    새로운 파일을 만들고 싶을때는 touch 파일명.확장자 라고 치면 된다.

    여러 개를 입력하면 한번에 여러 개를 만들 수 있다.

    touch test2.txt test3.txt test4.txt

     

    목록 확인하기 ls

     

    /ex 폴더내에 실습 때 만든 txt 파일들을 확인할 수 있다 !

    위치하고 있는 폴더에 어떤 파일들의 목록 있나 확인해볼 수 있는 명령어다.

    ls -a 를 치면 숨겨진 파일의 목록까지 볼 수 있다.

     

    위험한 명령어 rm

     

    처음 생성했던 파일을 rm test.txt 명령어를 통해 삭제했다.

    ls 를 통해 목록을 확인해보면 삭제된 것을 확인할 수 있다.

    하지만 윈도우 폴더를 들어가 지우거나 vs code 내에서 지우는 것을 권장한다.


    정리

     

     

    git 을 시작하기 앞서 git 의 개념과 핵심 원리에 대해 정리해보았다.

     

    개발자들의 멋진 화면을 비슷하게나마 흉내내볼 수 있는 터미널 실습을 해보며

    명령어를 통해 컴퓨터에게 명령을 내릴 수 있다는 것을 배웠다.

     

    다음 포스팅에는 개인 버전 관리를 시작해보자 !

     


    참고

    https://memegenerator.net/instance/23892843/serious-cat-git-serious-business

     

    Serious Cat - Git serious business

    Git serious business - Serious Cat

    memegenerator.net

    https://git-scm.com/

     

    Git

     

    git-scm.com

     

    반응형

    '공부 ! > Git' 카테고리의 다른 글

    Github default branch 변경 ( master → main )  (0) 2022.03.25
    Git non-fast-forward 해결 방법  (0) 2022.03.25
    Branch !  (0) 2021.05.11
    Git & Github 시작하기 !  (2) 2020.07.16

    댓글

Designed by SooJI