본문 바로가기
SAC

[새싹x코딩온] 풀스택 개발자 부트캠프 과정 1주차 회고 | GITHUB

by 비너발트 2024. 10. 24.

개발자라면 무조건 사용할 수밖에 없는 버전관리 프로그램 Git 예전부터 누누이 들어봤지만 영문프로그램 git, github, gitlab, gitbash 종류는 뭐가 이렇게 많고 뭘 써야 하고 터미널은 뭐지? 맨날 시작은 거창하게 했다가 실패한 그 프로그램

오늘 수업을 듣고 뿌셔봤습니다

 

처음 입문하시는 분들이라면 이런 터미널 환경이 굉장히 낯설고 불편하실 겁니다 저 또한 GUI한경에서만 코딩을 하다가 독학으로 공부하면서 여러 번 실패한 경험이 있습니다 실패한 이유를 살펴보자면 1.낯선 용어와 환경 2.자동완성이 없음 3. 과정이 눈에 딱 나타나지 않음 정도가 있는데요

 

눈에 바로 딱딱 나타나는 프론트 코딩과는 달리 크게 나타나는 게 없기 때문에 공부하다 흥미를 쉽게 잃을 수 있겠습니다 하지만 대부분의 프로그래밍 언어가 터미널(npm, yarn,Composer 등) 방식 패키지관리자를 사용하여 프레임워크/라이브러리가 공유되고 있고 이런 터미널 환경은 흥미가 없더라도 친해질 수밖에 없는 운명입니다 하지만 한번 제대로 배우면 순서는 대부분 비슷하기 때문에 다른 환경이어도 금방 배울 수 있을 것 같다는 제 생각입니다 그럼 git허브 초기세팅과 용어에 대해 알아보겠습니다 

 

 

[초기셋팅]

cd Desktop
mkdir github
cd github
git config --global init.defaultBranch main
git config --global core.ignorecase false
git config --global user.name "GitHub 프로필 이름"
git config --global user.email "GitHub 이메일 주소"
git config --global --list

로컬 저장소 경로는 사용자 마음대로 원하는 경로/이름을 지정할 수 있습니다

위 예제에서는 데스크톱(바탕화면)으로 이동 후 github 라는 폴더를 만들고(mkdir) github 폴더로 이동(cd) 한 뒤

만든 저장소(github폴더)를 설정한다 기본 브랜치 이름을 main으로 이후 ignorecase를 false로 하여 파일 이름을 대소 문자 구분을 하도록 설정 이후 커밋(commit)을 하기 위해 사용자 정보를 입력한다 커밋 시 로그인인증을 위한 정보 그리고

--list 명령어로 입력된 정보가 제대로 입력되었는지 확인하는 과정입니다

 

 

[용어정리]

Repositories : Git 서버 저장소

mkdir "name" : 현재 디렉토리에 name이라는 폴더를 만든다 

ls : 현재디렉터리경로에 있는 폴더/파일 리스트를 본

cd "name" : 입력한 이름의 디렉토리로 이동한다 

init : PC의 현재 디렉토리에 저장소를 만들겠다 = 디렉토리를 사용한다

status : 현재 로컬저장소의 파일 상태를 확인한다 여기서 Untracked files 내역에 나오는 파일들은  커밋(add)에 넣어지지않은 파일들이다

add "name" : 이름의 파일을 커밋 대기열에 추가한다 이름대신 . 입력하면 모든 파일이 대기열에 추가된다

commit -m "커밋기록내용" : add 후 대기열에 추가된 파일들을 git의 실제서버에 보내기 전 git의 로컬저장소(git)에 저장합니다

push origin main : 로컬저장소에 기록한 수정한 파일을 실제 외부저장소(실제서버)로 전송합니다

 

간단하게 요약하여 정리하자면

외부 저장소(git), 로컬 저장소(git) 이렇게 2가지 저장소가 있고 실제 사용자가 작성하면서 버전 1.2.3.. 이렇게 commit 하는 저장소는 로컬 저장소이며 최종적으로 push 를 해야만 외부 저장소에 업로드 된다는 방식을 알게되었습니다

 

그리고 비주얼 스튜디오에서 git 플러그인을 설치하여 git bash를 사용하지 않고도 commit / push를 할 수있는 방법을

찾게되었는데 나중에 명령어가 숙달되면 비주얼 스튜디오에서 커밋을 해주는것이 더 작업효율이 좋을 것 같습니다

다만 중간 오류가 발생할때 오류 구문이 나타나지않고 무한 로딩이 걸리는 현상이 발견됐는데

이 경우 스튜디오가 아니라 bash로 재작업하면 정상적으로 깃허브에 업로드가 됐습니다

어찌보면 bash가  제일 깔끔한 방법일지도 모르겠습니다