코딩해보니 87

[Git_18] 커밋의 취소하기(reset)와 되돌리기(revert) 차이점

커밋한 이후에도 커밋을 되돌려야 할 경우가 있을 수 있습니다. 엄밀히 얘기하면 커밋을 취소하는 것과 되돌리는 것은 Git에서는 다른 의미입니다. 지금은 학습을 위해 간단하게 filea.html, fileb.html과 같이 임의로 생성해서 실습을 해보고 있습니다만, 실제 개발을 하는 경우에는 수많은 코드를 작성하고 테스트하는 과정을 가지게 됩니다. 실무에서도 개발자의 손에서 개발이 완료되면 커밋을 하고 테스트 환경에 배포해서 테스트를 거치게 되고, 이 과정에서 수정 사항이 수 없이 발생합니다. 이러한 과정속에 심각한 경우에는 아예 예전으로 돌리고 다시 시작하는 경우가 있을 수 있습니다. 이런 경우도 종종 발생합니다. 버전 관리는 이런 때에 더욱 빛을 발합니다. Git을 사용하면 언제든지 원하는 시점으로 전..

코딩해보니/Git 2022.12.13

[Git_17] 스테이지에 등록한(올린) 파일을 취소(삭제)하기(내리기)

다시 조금은 돌아가서, 커밋을 하기까지의 과정을 다시 한번 상기해 보겠습니다. ① 워킹 디렉터리에서 파일을 생성 또는 수정 등 작업을 합니다. ② 작업이 완료되면 커밋을 위해 스테이지에 작업한 파일들을 등록(add)해서 커밋할 인덱스(Index)를 구성합니다. ③ 스테이지에 추가한 이후에 추가 수정할 부분이 있을 경우, ①, ②를 반복하게 됩니다. ④ 더 이상 수정할 사항이 없을 경우 커밋(commit)을 진행합니다. 위 과정에 있어서 여러 가지 상황이 있을 수 있습니다. 커밋을 하기 위해서는 스테이지에 등록하는 과정을 반드시 거쳐야 합니다. 하지만 커밋할 내용을 다시 구성해야 할 경우가 있을 수 있습니다. 그래서 스테이지에 등록한 것을 취소해야 할 경우가 생길 수 있는데, 스테이지에 등록한 파일을 취소..

코딩해보니/Git 2022.12.09

[Git_16] 커밋(Commit)의 이해 - 커밋 이력 확인하기

지난 시간 커밋하는 방법을 알아봤습니다. [Git_15] 커밋(Commit)의 이해 - 커밋 하기 커밋(commit)은 그냥 영단어의 의미로는 왜 커밋이라고 했는지 이해가 되지 않습니다. ㅎㅎ IT에서는 커밋은 다양하게 쓰입니다만, 전반적으로 저장되지 않은 모든 데이터를 데이터베이스에 저장 wishlan.tistory.com 첫 번째 커밋 후 이력 확인하기 이어서 커밋한 후 커밋한 이력(히스토리)을 확인해 보겠습니다. 커밋한 기록은 log 명령어로 확인할 수 있습니다. 사용법은 다음과 같습니다. # 커밋 이력(히스토리) 확인하기 $ git log $ git log를 실행한 화면은 다음과 같습니다. log 명령어는 시간 순으로 커밋한 이력을 출력하는데, 최신 커밋 기록부터 내림차순으로 나열합니다. 우리는 ..

코딩해보니/Git 2022.12.08

[Git_15] 커밋(Commit)의 이해 - 커밋 하기

커밋(commit)은 그냥 영단어의 의미로는 왜 커밋이라고 했는지 이해가 되지 않습니다. ㅎㅎ IT에서는 커밋은 다양하게 쓰입니다만, 전반적으로 저장되지 않은 모든 데이터를 데이터베이스에 저장하고 현재 실행 중인 일들을 종료하라는 명령으로 사용됩니다. Git은 개발 소스의 이력을 관리합니다. 이력을 관리하기 위해서는 소스의 변경 사항, 변경된 사항을 시간순으로 기록해야 합니다. Git에서 커밋은 쉽게 얘기하면 소스의 변경된 사항, 변경된 지점을 저장하는 것이라 할 수 있습니다. 특히, 여러 명이 함께 프로젝트를 진행한다고 하면, 누가 언제 어디를 수정했는지 관리되어야 합니다. 커밋으로 그 변화를 기록하게 되는데, 어떻게 동작하고 사용할 수 있는지 학습하도록 하겠습니다. 커밋(Commit) 하기 앞서 포스..

코딩해보니/Git 2022.12.06

[Git_14] 실습을 통해 Git 완벽 이해하기

실습을 통해 Git 이해하기 Git을 구성하는 3개의 영역과 파일에 대한 상태를 실습을 통해 확인해 보겠습니다. 본 실습을 통해 아주 기본적인 Git의 명령어들도 여러 가지 알 수 있습니다. 앞서 우리가 만든 저장소 firstrepo에서 터미널(Git Bash)을 실행합니다. 해당 폴더로 가서 마우스 오른쪽 버튼을 클릭하고 “Git Bash Here” 메뉴를 통해 빠르게 실행할 수 있습니다. 아니면, Git Bash 를 실행하고 firstrepo 폴더로 이동하면 되겠습니다. 실행한 터미널은 다음과 같습니다. 터미널 실행 후 경로가 firstrepo 인지 다시 한번 확인하고 뒤에 (master)가 표시되어 있는지 확인합니다. (master) 표시가 없다면, git init 명령어로 깃을 초기화해 보기 바랍..

코딩해보니/Git 2022.11.22

[Git_13] Git 개념 잡기 - Git에서 파일 상태 이해 하기

Git에서 구성되는 3가지 영역에 대해 알아봤습니다. [Git_12] Git 개념 잡기 - 워킹 디렉토리, 스테이지, 저장소 앞서 Git을 구성하는 영역에 대해 살펴봤습니다. [Git_11] Git 개념 잡기 - Git 영역 살펴보기 Git 개념 잡기 (Git 영역 살펴보기) 개발자로서 길을 걸어가면서 제일 중요하게 생각되었던 것이 있습니다. wishlan.tistory.com 알아보는 과정에 tracked, untracked 등의 파일 상태를 나타내는 용어들이 있었습니다. 이번엔 파일의 상태를 알아보고자 합니다. Git에서는 파일의 상태를 다음과 같이 다양하게 구분하고 있습니다. tracked(추적) 상태와 untracked(비추적) 상태 stage(스테이지에 등록된) 상태와 unstage(스테이지에 ..

코딩해보니/Git 2022.11.18

[Git_12] Git 개념 잡기 - 워킹 디렉토리, 스테이지, 저장소

앞서 Git을 구성하는 영역에 대해 살펴봤습니다. [Git_11] Git 개념 잡기 - Git 영역 살펴보기 Git 개념 잡기 (Git 영역 살펴보기) 개발자로서 길을 걸어가면서 제일 중요하게 생각되었던 것이 있습니다. 무엇이든 개념을 잘 알고 있어야 한다는 것입니다. 개발자로 처음 회사에 입사해서 업 wishlan.tistory.com 아래 그림과 같이 평범했던 폴더(디렉토리)가 $ git init 명령을 통해 Git 영역이 되고, Git 내부적으로 어떻게 논리적으로 구성이 되는지 확인했습니다. 워킹 디렉토리(Working Directory) Git이 버전을 관리하기 위해 구성하는 영역 중에 워킹 디렉토리(Working Directory)를 살펴보겠습니다. 워킹 디렉토리는 워킹 트리(working tr..

코딩해보니/Git 2022.11.17

[Git_11] Git 개념 잡기 - Git 영역 살펴보기

Git 개념 잡기 (Git 영역 살펴보기) 개발자로서 길을 걸어가면서 제일 중요하게 생각되었던 것이 있습니다. 무엇이든 개념을 잘 알고 있어야 한다는 것입니다. 개발자로 처음 회사에 입사해서 업무를 한다고 하면, 누군가 잘 만들어 둔 시스템 위에서 프로그래밍만 하는 경우는 유지보수할 경우나 주니어, 시니어 정도의 경력일 때나 할 수 있었던 것 같습니다. 물론 매니저급이 되어도 코딩만 하는 분들도 있습니다. 하지만 프로젝트에서 PM으로 성장하기 위해서는 전체적인 흐름을 잘 파악해야 합니다. 심지어 네트워크 구성까지도 고려를 해야 합니다. 그러기 위해서는 무엇이든 개념을 잘 갖추는 것이 매우 중요하다는 생각을 많이 하게 됩니다. Git도 마찬가지입니다. Git을 사용하는데 있어서도 실제 사용하는 회사에 입사..

코딩해보니/Git 2022.11.14

[Git_10] GitHub(깃허브) 사용하기 - 서버(원격) 저장소 만들기

GitHub(깃허브) 사용하기(서버 저장소 사용하기) 지난 포스팅에서 GitHub(깃허브)를 사용하기 위해 가입을 마쳤습니다. [Git_09] GitHub(깃허브) 사용하기 - GitHub 가입하기 GitHub(깃허브) 사용하기(서버 저장소 사용하기) 터미널(Git Bash)에서 그리고 소스트리를 이용해 로컬 저장소까지 만들어 보기도 했습니다. 이전 포스팅에서도 함께 살펴본 위 그림에서 빨간색 사 wishlan.tistory.com 서버(원격) 저장소 만들기 그럼, 이제 저장소를 하나 만들어 보겠습니다. 저장소를 만드는 것은 소스트리를 사용해 로컬 저장소를 만드는 방법과 같다고 할 수 있습니다. 자신의 GitHub에서 오른쪽 맨 상단에 [+] 를 클릭해보면 다음과 같이 메뉴가 펼쳐집니다. 펼쳐진 메뉴에서..

코딩해보니/Git 2022.11.13

[Git_09] GitHub(깃허브) 사용하기 - GitHub 가입하기

GitHub(깃허브) 사용하기(서버 저장소 사용하기) 터미널(Git Bash)에서 그리고 소스트리를 이용해 로컬 저장소까지 만들어 보기도 했습니다. 이전 포스팅에서도 함께 살펴본 위 그림에서 빨간색 사각 박스로 표시한 곳이 로컬 저장소이고, 이 로컬 저장소는 내 PC에 만들어집니다. 로컬 저장소는 혼자 버전관리를 하는데 그칩니다. 여러 명이 함께 협업을 하기 위해서는 서버 저장소가 필요합니다. 위 그림과 같이 여러 명이 협업을 위한 구성에서 서버 저장소는 반드시 필요하겠습니다. 이 서버 저장소에 해당하는 것이 GitHub입니다. 서버 저장소는 다른 말로 원격 저장소라고도 할 수 있습니다. 서버 저장소는 로컬 저장소의 소스를 복제한 복사본이라고 할 수 있으며, 반대로 로컬 저장소가 서버 저장소의 복사본이기..

코딩해보니/Git 2022.11.12

[Git_08] 비주얼 스튜디오 코드(Visual Studio Code = VSCODE) 설치하기

비주얼 스튜디오 코드(Visual Studio Code = VSCODE) 설치하기 Git을 얘기하다가 뜬금없이 비주얼 스튜디오 코드, 일명 VSCODE를 설치를 잠시 언급하는 이유는 실습을 위해서도 그렇지만, 버전 관리를 하는 것은 결국 프로그래밍을 하는데 필요한 부분이고, 프로그래밍을 하기 위해서는 코드 편집기는 필요한 요소이기 때문입니다. 코드 편집기가 필요한 요소이긴 해도 꼭 VSCODE 일 필요는 없습니다. 앞으로 실습에 있어서 코드 편집은 VSCODE를 기반으로 할 예정이기 때문에 필요한 과정으로써 언급함을 말씀드립니다. 비주얼 스튜디오 코드는 코드를 작성하기 위한 편집기입니다. Git을 배우는데 이게 꼭 필요한가?라고 한다면 그렇진 않습니다. 메모장을 사용해도 되고 자신이 편하게 이용가능한 편..

코딩해보니/Git 2022.11.11

VMware(Workstation 16 Player)에서 CentOS 7 수동 설치하기 (2)

지난 포스팅 VMware(Workstation 16 Player)에서 CentOS 7 수동 설치하기 (1)에 이어서 설치를 계속 진행해 보겠습니다. VMware(Workstation 16 Player)에서 CentOS 7 수동 설치하기 (1) 이전 포스팅에서 VMware(Workstation 16 Player)에서 CentOS 7을 자동으로 설치해 봤습니다. VMware(Workstation 16 Player)에서 CentOS 7 자동 설치 하기 이전 포스팅에서 CentOS 7을 다운로드했고, VMware(Workstation 16 Playe wishlan.tistory.com CentOS 7 수동 설치하기 ​설치 요약 ​소프트웨어까지 선택했고, 파티션 설정도 자동으로 선택했습니다. 파티션 설정에 대해서..

VMware(Workstation 16 Player)에서 CentOS 7 수동 설치하기 (1)

이전 포스팅에서 VMware(Workstation 16 Player)에서 CentOS 7을 자동으로 설치해 봤습니다. VMware(Workstation 16 Player)에서 CentOS 7 자동 설치 하기 이전 포스팅에서 CentOS 7을 다운로드했고, VMware(Workstation 16 Player)에서 가상 머신까지 만들어 봤습니다. VMware에서 CentOS 설치를 위한 가상 머신(Virtual Machine) 만들기 Windows 환경에서 리눅스(Linux)를 wishlan.tistory.com 이렇게 자동으로 설치를 하니, GUI 방식으로 설치가 되고 과정을 알 수가 없었습니다. 이제 설치 과정을 확인할 수 있게 수동으로 설치해 보겠습니다. 설치하기 전에 살펴보기 만들어 본 가상 머신 "..

VMware(Workstation 16 Player)에서 CentOS 7 자동 설치 하기

이전 포스팅에서 CentOS 7을 다운로드했고, VMware(Workstation 16 Player)에서 가상 머신까지 만들어 봤습니다. VMware에서 CentOS 설치를 위한 가상 머신(Virtual Machine) 만들기 Windows 환경에서 리눅스(Linux)를 사용해 보는 방법은 여러 가지가 있을 수 있습니다. Doker 환경에서 컨테이너 기반으로 실행해 볼 수 도 있고, WSL 환경에서 이용도 가능해졌고, Hiper-V 상에서 리눅스 wishlan.tistory.com 이제 실제 CentOS를 설치해 보겠습니다. 설치 하기 전에 살펴보기 만들어 본 가상 머신 "CentOS 7 64-bit"라는 폴더를 들어가 보면 다음과 같은 파일이 확인됩니다. 각 파일은 다음의 역할을 합니다. .vmx : ..

[Git_07] 소스트리(Sourcetree)에서 로컬 저장소(Repository) 만들기

아래 이전 포스팅에서 소스트리를 설치하고, 로컬 저장소를 추가해 봤습니다. [Git_06] 소스트리(Sourcetree) 설치 하기 소스트리(Sourcetree) 설치하기 이전 포스팅에서 CLI와 GUI에 대해 잠시 언급을 했었습니다. Git을 설치한 후 Git Bash를 실행해서 입력해봤던 명령어들이 있었습니다. 모두 CLI 방식입니다. 무언가를 실 wishlan.tistory.com 소스트리(Sourcetree)에서 로컬 저장소(Repository) 만들기 Git을 설치한 후 firstrepo 라는 저장소를 처음으로 만들어 볼 때 사용한 명령어가 init 였습니다. firstrepo라는 폴더를 만들고 해당 경로에서 Git Bash를 실행하고 “git init”를 실행해서 만들었습니다. 이러한 과정을 ..

코딩해보니/Git 2022.11.07