코딩을 시작하면서는 작은 양의 코드만 작성했기에 GitHub를 일종의 저장소로써만 사용했었습니다. 윈도우 환경을 사용하면서 깃허브 데스크탑에 익숙해져 있었고 리눅스 기반 환경에 대한 막연한 두려움 때문에 우분투도 몇 번 안써본 것이 사실입니다. 하지만, 부트캠프에 들어와서 코딩을 시작하면서 스스로가 관리할 수 범위를 벗어나며 수정하는 부분에 대하여 버전 관리가 점점 필요하게 된 거 같습니다.
역시 목마를 때 가장 와닿는 것인지 부랴부랴 Git 관련해서 지식을 배우고 부족한 부분을 채워나가고 있습니다. 우선적으로 튜토리얼을 보면서 정리한 부분을 블로깅하려 합니다.
수정할 때마다 수정본을 저장하여 저장소에 보관한다고 생각하면 됩니다. 모든 파일의 저장 상태를 과거 버전으로 롤백하거나 프로토 타입을 시도 해볼 때 따로 폴더를 만들 필요없이 여러 버전을 관리가 가능하게 됩니다.
주로 CLI(Command Line Interface) 즉, 커맨드 창에서 기능을 수행하며 GI 인터페이스로 수행하는 깃 허브 데스크탑, 소스트리 등이 있으나 개발자이기에 커맨트를 통하여 직접 컨트롤 하는 것을 권장합니다.
IDLE과 Git을 병행하여 사용하는 것이 일반적이며, 대부분의 IDLE에서는 ctrl
+ ~
을 통하여 터미널을 열 수 있다. 따라서 편집기에서 바로 Git을 활용하는 것이 가능합니다. 참고로 command + shift + .
: 숨긴파일 보기 기능이 있으니 활용하도록 합시다!
.
: 모든 파일을 추가한다.q
로 로그창 종료 가능)복귀에는 2가지 방법이 있는데, Reset과 Revert가 있습니다. 그 중 Reset은 과감한 방법이며, Revert는 어느 정도 현재에 걸쳐두고 복귀를 하는 방법입니다. git log에서 나온 결과물 중 일련번호 앞 6자리를 복사하고 사용하면 됩니다.
브랜치를 통하여 기존의 것과는 다른 새로운 시도를 할 수 있습니다. 브랜치를 만들고 체크아웃하면서 원하는 버전을 나누어 만드는 것이 가능합니다.
name
: 브랜치 생성name
: 브랜치 이동종료시에는 Mac에서는 저장하고 나가기 :wq
를 입력합니다.
같은 파일의 같은 라인에 손을 대고 나서 merge를 하는 경우에는 conflict가 발생합니다.
둘중의 하나의 내용을 수정한 다음에는 git add로 캡슐에 넣고 git commit까지만 실행해줍니다. 병합하는 것이라고 이미 메시지가 완료되어있고 :wq로 저장해주면 merge가 완료됩니다.
협업할때는 되도록 다른 브랜치들이 같은 파일을 수정하는 것을 삼가하도록 해야합니다.
마스터 브랜치와 별도로 진행한 브랜치
$ git checkout -b my-branch // 두 명령어는 동일 $ git branch my-branch $ git checkout my-branch
각 브랜치의 커밋을 통한 확장
각 브랜치를 병합
$ git checkout master $ git merge my-branch
remote 브랜치 사용에 있어서 충돌이 있을 수 있으니 local에서는 주로 사용하여 커밋들을 정리할 때 사용하는 것을 권장합니다.
👉🏻 merge, rebase 관련 자료 1
👉🏻 merge, rebase 관련 자료 2
👉🏻 실무 rebase 사용법
cammand
+ shift
+ p
: 명령 팔레트
명령 팔레트 내 셸 명령 PATH에 'code' 명령 설치
command
+ j
: VS code 내 터미널 실행