34

#17 깃(Git) - 브랜치 머지(merge)하기 - 1

안녕하세요! 에이블디 입니다! 오늘은 지난 시간에 이어 브랜치를 머지(merge, 병합)하는 방법에 대해 알아보겠습니다! 지난 시간까지 여러 개의 브랜치를 만들고 master 브랜치가 아닌 다른 브랜치에서 커밋도 해보았는데요! 프로젝트를 진행할 때 이렇게 각 브랜치에서 작업을 하다가 브랜치에서의 작업을 마무리하고 master 브랜치와 합쳐야 할 시기가 오는데 이렇게 브랜치를 합치는 작업을 머지(merge) 또는 브랜치 병합이라고 합니다. 현업에서는 머지한다는 용어가 더 자주 쓰이는데요, 이렇게 머지를 하다 보면 여러 상황이 생기기 마련인데 각 상황마다 머지하는 방법을 하나하나 알아보도록 하겠습니다. 머지는 상황별로 파일끼리 충돌이 일어나거나 여러 가지 변수가 많이 생길 수 있어 처음 공부할 때 어려울 수..

git 2021.11.24

#14 깃(Git) - 브랜치 만들기 실습

안녕하세요! 에이블디 입니다! 이번 시간에는 지난 시간에 이어 브랜치 만들기 실습을 해 볼 거예요! 지금까지 배운 것들을 적절히 사용하면서 실습해 보겠습니다! 지금까지 사용했던 디렉터리를 빠져나와 홈 디렉터리에서 새 디렉터리를 하나 만들어 주세요! 저는 "abled"라고 이름 짓겠습니다. 디렉터리를 만드시고 해당 디렉터리로 이동까지 해주시면 됩니다! 디렉터리를 빠져나오는 법은 cd .. 명령어를 사용해 주시면 됩니다! $ cd .. // 디렉터리를 빠져나오는 명령어 $ mkdir abled $ cd abled abled 디렉터리로 이동하셨으면 abled 디렉터리를 리포지토리로 만들고 나서 ls -al 명령을 사용해서 .git 디렉터리가 만들어졌는지 확인해 주세요! $ git init $ ls -al 잘 ..

git 2021.11.18

#13 깃(Git) - 브랜치(branch)와 머지(merge)란 무엇일까?

안녕하세요! 에이블디 입니다! 오늘은 브랜치에 대하여 알아볼까 합니다! 깃, 깃 헙을 들어봤다면 브랜치도 적지 않게 들어보셨을 텐데요! 이번 시간에는 브랜치에 대해 알아보는 시간을 가져보도록 할게요! 서비스를 운영하다 보면 추가 기능을 개발해서 업데이트해야 하는 경우가 생기는데요, 이때 기존 파일에 새로운 기능을 만들어 새 버전을 만들어야 한다면 어떨까요? 새로 개발한 기능이 오류 없이 완벽하게 동작한다는 보장이 있을까요? 완벽하게 동작한다는 보장이 없다면 기존에 코드에 새로운 기능을 추가하기란 여간 쉬운 일이 아닙니다. 기존에 잘 작동되던 기능도 동작하지 않을 수 있거든요. 이럴 때 제대로 동작하는 소스코드는 그대로 둔 채 새 소스코드를 추가한 버전을 따로 만들어 관리하고, 완벽하게 완성한 다음 원래 ..

git 2021.11.17

#11 깃(Git) - 커밋을 삭제하고 취소하기 (reset)

안녕하세요! 에이블디 입니다! 오늘은 지난 시간에 이어 커밋을 취소하는 방법에 대해 알아볼 건데요, 이번 시간에는 커밋을 삭제하고 취소하는 방법에 대해 알아보겠습니다! 지난 시간에 abled.txt의 상태가 스테이징이 되기 전 상태였었죠? 이번엔 abled.txt를 스테이징과 커밋을 한 번에 해보도록 해요! 스테이징과 커밋을 한번에 처리하는 명령어 기억나시나요? 커밋 메시지는 "abled.txt add Hi YAMA!"로 해서 처리해 보도록 합시다. $ git commit -am "abled.txt add Hi YAMA" 스테이징과 커밋이 한 번에 이루어지는 걸 볼 수 있습니다! 하는 김에 깃 로그도 확인해 볼까요? $ git log 커밋 메시지가 "abled.txt add Hi YAMA"인 커밋을 확인..

git 2021.11.12

#10 깃(Git) - 수정한 파일, 스테이징 되돌리기 (restore)

안녕하세요! 에이블디입니다! 지난 시간까지는 파일을 스테이징하고 커밋까지 하는 방법을 살펴보았는데요! 작업을 하다가 여러 가지 이유로 이전 버전으로 되돌려야 하거나 스테이징과 커밋 등을 취소하고 이전 상태로 되돌려야 하는 상황이 한 번쯤은 발생하게 됩니다. 이럴 때 작업내용을 되돌리는 방법을 알아야겠죠? 오늘은 작업 트리에서 수정한 파일과 스테이징 된 파일을 이전 상태로 되돌리는 법을 알아보도록 하겠습니다! 그럼 먼저 작업 트리에서 수정한 파일을 되돌리는 방법부터 알아볼까요? 작업트리에서 수정한 파일을 되돌릴 때는 restore 명령을 사용하면 됩니다! *깃 2.23 버전부터 명령어가 바뀌었어요! 작업 트리에서 작업내용 취소할 때는 (기존) git checkout -- abled.txt -> (변경) g..

git 2021.11.11

#9 깃(Git) - 커밋 메시지 수정하기

안녕하세요! 에이블디 입니다! 오늘은 커밋 메시지를 잘못 입력했을 때 커밋 메시지를 수정하는 방법에 대해 알아볼게요! 가장 최근의 커밋 메시지를 수정하려면 git commit 명령에 --amend를 추가해주면 됩니다! $ git commit --amend 바로 실습해 볼까요? #7번 포스팅에서 가장 최근에 작성했던 "add Joker" 메시지가 보이시죠? 이 부분을 텍스트 파일 수정하듯 'i'를 입력하여 입력 상태로 만든 뒤 기존의 메시지를 "add Joker abledStudent.txt"로 바꾸어 볼게요! 위와 같이 수정하시고 저장과 함께 vi가 종료되면 커밋 메시지가 수정된 것과 이전 커밋에 더해진 것을 확인하실 수 있습니다! 오늘은 커밋 메시지 수정에 대해 알아보았는데요! 다음 시간에는 작업 내용..

git 2021.11.10

#8 깃(Git) - 특정 파일과 디렉터리를 버전 관리에서 제외하기

안녕하세요! 에이블디 입니다! 오늘은 버전 관리 중인 프로젝트에서 특정 파일 또는 디렉터리를 제외하고 싶을 때 어떻게 해야 하는지에 대해 알아보겠습니다. 주로 메모해 놓은 파일이나 더 이상 사용하지 않는 파일, 프로그램 사용 중에 자동으로 생성된 swp파일 등이 되겠죠? vi를 사용해서 .gitignore 파일을 만들어 그 안에 버전 관리하지 않을 파일 또는 디렉터리 이름이나 파일 확장자를 입력하면 됩니다. memo.txt backup/ .swp 예를 들어 .gitignore 파일 안에 위의 내용이 작성되어 있으면 memo.txt 파일, backup 디렉터리, 확장자가 .swp인 파일을 버전 관리에서 제외시킬 수 있습니다!

git 2021.11.10

#7 깃(Git) - unmodified, modified, staged

안녕하세요 에이블디입니다! 지난 시간에 이어서 오늘도 파일의 상태에 대해 조금 더 알아볼까 해요! 지난시간에 한 번이라도 버전을 만들었던 파일은 tracked 상태가 된다고 한 것, 기억나시나요? tracked 상태인 파일은 깃 명령으로 파일 상태를 확인하면 현재 작업 트리에 있는지, 아니면 스테이지에 있는지 등 더 구체적인 상태를 알려주는데요, 이번 시간에는 깃의 커밋 과정 중에서 tracked 파일의 상태가 어떻게 바뀌는지 확인해 보겠습니다. 지난 시간에 abled.txt라는 파일을 수정하고 abledStudent.txt라는 파일을 새로 생성하여 커밋까지 마친 것 기억나시죠? 다시 한번 깃의 상태를 살펴봅시다. 명령어는 기억나시죠? $ git status 'working tree clean'이라는 문..

git 2021.11.09

#6 깃(Git) - Tracked와 Untracked

안녕하세요! 에이블디입니다! 이번 시간에는 작업 트리에 있는 파일의 상태에 대해 알아볼 텐데요! tracked와 untracked 상태에 대해 알아보도록 하겠습니다! 지난 시간에 만들었던 abled.txt파일을 열어 'Bye Jayden!'를 추가하고 저장해줍니다. $ vi abled.txt 이번에는 albedStudent.txt라는 새로운 파일을 만들어 'YAMA', 'Chalie', 'Lucas'를 추가해 주시고 저장해 주세요. $ vi abledStudent.txt 이렇게 되면 albed.txt와 abledStudent.txt 파일 모두 작업 트리에 있겠죠? 이제 git status 명령을 사용해 어떤 상태인지 확인해 봅시다. $ git status 지난 시간에 커밋했던 abled.txt 파일은 '..

git 2021.11.08

#5 깃(Git) - 커밋(commit) 상세히 알아보기.

안녕하세요! 에이블디 입니다! 오늘은 지난 시간에 이어 커밋에 대해 조금 더 자세히 알아보고자 합니다. 그럼, 바로 시작해 볼까요? 버전을 관리하기 위해서는 지금까지 어떤 버전을 만들었는지 알 수 있어야겠죠? 또 버전마다 어떤 차이가 있는지도 파악할 수 있어야 합니다. 이번 시간에는 어떤 버전을 만들었는지, 또 버전마다 어떤 차이가 있는지 알아보는 방법에 대해 알아보겠습니다. git log 지난 시간에 git log라는 명령어를 입력했던 것 기억나시나요? git log는 지금까지 커밋했던 기록을 살펴보기 위한 명령어인데요, 다시 한번 git log 명령을 입력해보고 명령을 입력했을 때 나타나는 화면을 더 자세히 살펴보겠습니다. $ git log 1. commit이라는 항목 옆에 영어와 숫자로 된 긴 문자..

git 2021.11.04