💻/Git
Git9 (Git Tag)
중요한 버전은 바로 찾아가자구 ! Tag : 무수히 많은 commit중 중요한 commit에 태깅을 해서 바로 찾아갈 수 있도록 하는 기능 즉, 특정 버전(Commit)에 Tag를 달아놓을 필요가 있을 때 사용(ex- 버전 릴리즈) 실습환경 구축 Remote Repository(이번 이름은 tag_project)만들고 clone! 총 3 번 commit 하기 cat > hello.txt hello, kim git add hello.txt git commit -m 'commit1' hello.txt cat > hello.txt hello, lee git commit -m 'commit2' hello.txt cat > hello.txt hello, park git commit -m 'commit3' hell..
Git8 (Merge and Conflict)
충돌을 막아보자 ! Merge : 브랜치를 다시 병합하는 기능, 현재 위치한 Branch에 다른 Branch를 병합 Conflict : Merge하는 과정에서 양쪽이 똑같은 부분을 수정했을 때 시스템이 이를 사용자한테 알려 해결하는 과정 Merge Tool 설정 git config --global -e # 아래 텍스트 추가, diff때와 마찬가지로 wait 옵션은 선택사항 [merge] tool = vscode [mergetool "vscode"] cmd = "code --wait $MERGED" 실습환경 Setting Remote Repository 생성 이름 : merge_project으로 하겟숨 # clone 후에 해당 폴더로 이동! cd merge_project cat > test.txt my n..
Git7 (Git Diff)
다른 작업과 차이를 비교해보자! Git Editor 설정 git config --global core.editor --wait # ex) git config --global "code --wait" # VSCOde가 code임 ㅋㅋ --wait 옵션은 command line 으로 VSCode를 실행시켰을 경우, VSCode 인스턴스를 닫을 때까지 command를 대기(즉, VSCode 종료 전까지는 커맨드에서 작업 안됨!) 편의에 따라 마음대로 선택하기! Git Diff Tool 설정 Diff : 버전간의 차이점을 조회 Git Configuration 파일 열기 git config --global -e # -e : 여는 옵션 Git Diff 설정 추가 difftool이 원래는 vim으로 설정되어있을텐데 ..
Git6 (Git Graph, Git Log)
작업이력을 확인해보자 ! 작업한 것에 대한 버전과 브랜치들을 텍스트가 아닌 시각적으로 보기 가능 VSCode - extension - Git Graph 검색 후 설치 아래 그림 클릭시 그래프 확인 가능! 실습환경 만들기 Remote Repository 생성 log_project 생성 Local Repository에 Clone git clone https::@주소.git cat : cat 파일명을 하면 내용이 출력되고, >(꺽쇠)를 사용하면 파일이 이미존재하면 덮어씌움 존재하지 않으는다면 파일을 생성하고 파일 내용을 쓸 수 있게함 >>(꺽쇠 두 번) 사용하면 계속 이어붙여서 작성 cat > hello.py print('hello ~') # 이후 ctrl + D 를 이용해 빠져나옴 # 확인해보자 git ad..
Git5 (Branch)
협업과 버전관리를 위한 Branch를 AraBoza! Branch 브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념, 필요에 의해 만들어지는 각각의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 진행할 수 있다. 브랜치를 활용해 버전관리가 가능하다. Default Branch Repository를 생성하자 마자 생성되는 기본 브랜치 Main or Master? Git에서는 Master로 생성, 그러나 github에서는 main으로 생성 View all Branches 를 통해 이름을 설정가능, 그러나 이를 수정하면 다른 사람한테도 영향이 가니 신중하게!(Share 하기 전에 바꾸는건 괜찮아아아아) Defalut Branch 설정 Remote Repository를 생성할 때 Def..
Git4 ( Remote Repository 복제, 클론!)
Clone을 사용하여 Remote Repository를 로컬에 복제해보자! Remote Repository를 Local로 복제해서 사용하기 Local Repository를 생성하지 않은 상태에서 Git clone 명령을 사용하여 Remote Repository를 Local에 복제할 수 있다. Git Clone 원래는 아래와 같은 과정으로 Remote Repo를 내 Local로 가져올 수 있었다. 폴더생성 => Git init 으로 해당 폴더 초기화 => Remote Repo 등록 => Remote Repo의 내용을 Pull 위의 모든 과정을 Git Clone 하나만으로 할 수 있음 git clone https://:@github.com/.git 테스트를 위해 먼저, Remote Repository 생성 ..
Git3 (Local Repository, Remote Repository)
Local Repository Local Repository 구성 Local Repository는 Git이 관리하는 3단계로 구성되어 있다. Working Directory(작업공간) - 실제 소스 파일, 생성한 파일들이 존재, 그냥 컴퓨터에 있는 폴더라 생각! Index(Stage) - Staging area(준비영역)역할, git add한 파일들이 존재 Head - 최종 확정본, git commit한 파일들이 존재 Local Repository 생성 Workspace 생성 mkdir(make directory) 새로운 디렉토리를 만들 때 사용하는 명령어 mkdir dirname : dirname이라는 이름의 디렉토리 생성 mkdir git_ws # git_ws로 이동 cd git_ws # test_p..
Git 2(Global configuration & 기본용어)
Git Global Configuration 기초설정! Global User name & Email 말 그대로 유저의 이름과, 이메일 등록하는 과정 git config --global user.name git config --global user.email Line ending 줄바꿈을 하거나 엔터를 하거나 하면 우리 눈에는 안보이지만 줄바꿈 문자가 들어감, 그러나 윈도우와 맥이 CRLF 차이로 인해 문제가 생길 수 있음, 따라서 윈도우 유저들은 변경해줘야함 Windows : CR(\r) + LF(\n) Unix or Mac : LF(\n) windows 사용자와 Mac 사용자가 같은 Git Repository를 작업할 때 코드에서 변경된 내용이 없어도 CRLF차이로 인해 commit이 발생할 수 있음 ..