Appia의 IT세상

[깃, Git] Git Commit 개념 및 Workflow(깃 커밋 워크플로우) 본문

Development/GIT

[깃, Git] Git Commit 개념 및 Workflow(깃 커밋 워크플로우)

Appia 2023. 11. 8. 07:29
반응형

[깃, Git] Git Commit 개념 및 Workflow(깃 커밋 워크플로우)

[깃, Git] Git Commit 개념 및 Workflow(깃 커밋 워크플로우)

이전 포스팅에서는 Git에 대한 기본적인 개요 및 github등과의 차이점에 대해서 이야기를 해봤습니다. 그러면, 이제 흔히들 이야기 하는 commit에 대해서 이야기를 해보고자 합니다. 먼저, commit의 개념과 workflow에 대해서 이야기를 해보고자 합니다. 이전 사람들의 commit에 대해서 아무런 생각 없이 "commit했다"와 같은 단어를 사용합니다. 물론, 작업을 하시다보면, 자연스렇게 이 commit에 대해서 이해를 하게 됩니다. 그래서 이번 포스팅에서는 이러한 개념들에 대해서 간단히 살펴보고자 합니다. 

[깃, Git] Git 기본개요, VCS란? Git과 GitHub의 차이

 

[깃, Git] Git 기본개요, VCS란? Git과 GitHub의 차이

[깃, Git] Git 기본개요, VCS란? Git과 GitHub의 차이 앞서 포스팅에서 Git의 기본 명령어에 대해서 포스팅을 했었습니다. 원래라면, 이번 포스팅을 가장 먼저 포스팅을 해야했었는데, 미처 생각 못했던

appia.tistory.com

 

먼저, 이전 포스팅에서 다음과 같은 그림에 대해서 본적이 있으실 것입니다. 물론, 이 event라는 것은 git에서 뿐 아니라, 다양한 작업에서의 checkpoint라고 생각하셔도 됩니다. 즉, 이 checkpoint 를 사람들에 따라서 event 또는 변경사항이 존재하는 지점이라고도 합니다. 우리는 이 부분을 commit이라고 할 것입니다. 

git에서의 event = commit

그러면 이 commit은 간단히 생각하면 여러 파일의 변경들에 대해서 추적할 수 있는 지점을 만드는 것입니다. 예를 들면, 제가 발표 파워포인트를 준비하는데, Event1에서는 전체적인 개요들에 대해서 outline을 정하고, Event2에서는 각 chapter에 대해서 말하고자 하는 내용을 작성할 것입니다. 이와 같은 형태로 저장소에 추적 및 회귀가 가능토록 지점을 만듭니다. 그러한 지점을 저희는 commit 이라고 합니다. 

 

그러면, commit의 과정을 살펴보겠습니다. 

git commit workflow

일단, 작업 폴더에서 다음과 같은 파일들의 변경이 이루어질 것입니다. 

  • 파일 삭제
  • 파일 내용 변경
  • 파일 생성

이 부분을 commit을 하기 위해서 가상 공간이  stage에 add을 하게 됩니다. 그리고, add된 파일을 바탕으로 commit을 진행하게 됩니다. 그럼 간단한 예시를 그림과 함꼐 살펴보겠습니다. 

 

먼저, 현재 작업하는 폴더에서 11~ 16까지의 변경사항을 만들었습니다. 여기에서 저희는 모든 파일을 한번에 commit하지 않고, 총 2가지로 나누어서 commit을 진행할 예정입니다. 11~12과 13~16 이렇게 두개의 변경사항들을 나누어서 commit 을 진행할 예정입니다. 

git workflow예시 1. 파일 수정

위의 파일에서, 먼저, 11, 12번에 해당하는 항목을 stage에 add를 진행합니다. 

git workflow예시 2. 11, 12번 파일의 stage로 add

그런 후에 이 2가지 변경사항에 사항에 대해서 commit을 진행합니다. 그러면 현재 stage에  있던 2개의 파일이 한개의 commit으로 지점을 만들 수 있게 됩니다. 그러면 현재 13~16번에 해당하는 변경사항들이 존재하게 됩니다. 

git workflow예시 3. 11, 12번 파일의 Repository로 commit

이 13~16번의 총 4가지 항목에 대해서 그러면 저희는 다시 한번 stage로 add를 하게 됩니다.그러면 기존에 11~12에 한해서는 한개의 commit이 진행되었고, 이 4가지 변경사항들에 대해서 stage로 올라왔기 때문에 이 부분을 또 한개의 commit으로 진행이 될 것입니다. 

git workflow예시 4. 13~16번 파일의 Stage로 add

그러면 현재 stage에 올라와 있는 4가지 변경사항에 대해서 commit을 통해서 한개의 commit이 진행이 됩니다. 

git workflow예시 5. 13~16번 파일의 Repository로 commit

그러면 이와 같이 2가지 commit이 생성이 됩니다. 이와 같은 형태로, commit이 진행이 될것입니다. 위에서 보는 바와 같이 수정사항들이 여러개 있어도, 사용자가 지정하는 부분에 따라서 commit의 갯수가 변경이 될 수 있습니다. 

[깃, Git] 깃(Git) Bash 기본명령어(폴더 생성 삭제, 파일 생성 삭제)

 

[깃, Git] 깃(Git) Bash 기본명령어(폴더 생성 삭제, 파일 생성 삭제)

[깃, Git] 깃(Git) Bash 기본명령어(폴더 생성 삭제, 파일 생성 삭제) 앞선 포스팅에서는 소스트리(Source Tree)을 다운로드 받고 설치하는 방법에 대해서 포스팅을 했습니다. 실제, 많은 사람들은 GUI기

appia.tistory.com

이번 포스팅에서는 [깃, Git] Git Commit 개념 및 Workflow(깃 커밋 워크플로우)라는 주제로 포스팅을 진행해봤습니다. 이 부분을 토대로 다음 포스팅에서는 실제 git bash에서 status에 add 하거나 repository로 commit을 하는 방법에 대해서 이야기를 해보고자 합니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments