앱이나 웹사이트나 게임 등 무언가 만들기 시작하면 파일들이 다 담기는 프로젝트 폴더가 있다.
그 폴더로 이동(cd) 하고 git 을 시작하면.. (혹은 vs code 프로그램에서 crtl + ` 을 눌러서 git 을 시작할 수 있다. 동시에 현재폴더로 이동명령)
$ git init
-> 지금부터 이 모든 폴더의 수정 내역들이 저장되는 .git 이라는 숨김 폴더가 생긴다.
현재 작업한 폴더를 백업하고 싶다면..
$ git commit -m "(작업수행 내용)"
-> "(작업수행 내용)"에 들어가야 할 것은 이러이러한 작업을 수행했다 정도의 코멘트를 달아준다. 그 다음 commit 과정이 일어나고 박제가 된다고 볼 수 있다. 이때 박제를 여러번 했다고 해서 용량이 엄청 커지는 것은 아니고 변경 사항만 기록되는 것이다.
프로젝트를 과거의 상황으로 되돌려 지고 싶을 때가 존재할 수 도 있다. 그렇다면 이제까지 박제한 내역들을 확인하는 명령어
$ git logs
박제한 내역들이 나오고 아래와 같이..
$ git reset --hard 3r8da0
명령어를 쳐주면 3r8da0 의 과거 상태로 복원된다. "정말 Git똥차다고 볼 수 있다!"
개발하다가 보면 이 기능을 넣는게 좋을까? 디자인을 바꿀까 말까 하는 고민이 생긴다. 결정하기 애매할 때..
$ git branch "(브랜치명)"
branch 가 나뭇가지라는 뜻을 갖고 있고 git branch 는 git 용어로 정의해보면 "branch(가지)를 딴다" 라고 할 수 있다.
좀 더 이해 쉽게 그림을 가져와서 정리를 해보겠다.
주된 코드는 파란 줄로 이루어진 것들인데, 여기서 시도해볼 코드는 보라색 줄이다. 시도해보는 과정을 여러차례 거친 후 "괜찮다, 적용하고 싶다" 하면 주된 코드(main branch)와 병합(merge) 할 수 있다. 그러면 위에 그림과 같이 이어지게 되는 것이다.
$ git merge "(브랜치명)"
git 의 이러한 기능들은 매번 이런 버전, 저런 버전 따로 복사해서 저장해둘 필요가 없다는 것이 큰 장점인 것 같다.
git 은 순서대로, 체계적으로 관리되기 때문에 나중에 문제가 발생하면 누가 작업했는지 알 수 있고 얼마든 코드들을 과거시점으로 되돌려서 문제를 해결할 수 있다.
Github
git은 버전관리를 위한 소프트웨어이고 github는 이 git으로 저장되어서 원격 전송된 내역들이 저장되는 공간을 제공하는 "서비스"이다. git은 카메라, github는 유튜브와 같다고 생각하면 된다.
git 으로 관리하는 모든 코드, 프로젝트를 얼마든지 github 에 무료로 전송되서 사용할 수 있다.
github는 오픈소스 프로젝트들이 많고 수많은 자발적 참가자들에 의해 발전하는 곳이다. 그래서 github은 자유소프트웨어 혹은 오픈소스의 성지라고 불려진다.
출처
'👩🏻💻 TIL' 카테고리의 다른 글
2021_09_24_TIL (0) | 2021.09.24 |
---|---|
2021_09_23_TIL (0) | 2021.09.23 |
dos 명령어 cd (0) | 2021.07.01 |
2021_06_28_TIL (0) | 2021.06.28 |
Sqld 2과목 3장 필기 정리 (0) | 2021.05.12 |