깃(Git)
: 버전 관리 툴.
- 버전 관리 툴이 없던 시절에는 프로젝트 폴더 자체를 복제해서 주먹구구식으로 관리했었다. 그러나 프로젝트 폴더는 보통 100GB이상.
- 깃, SVN, 퍼포스 등의 버전 관리 툴이 등장하며 이에 대한 부담이 줄어듦.
- 본인 컴퓨터에 깃 설치가 되어 있는지 확인하는 방법.
작업 표시줄 > 검색 클릭 > “cmd” 라고 타이핑 후 엔터.
”git -v” 명령어 타이핑 후 엔터 시에 나오는 문구 확인.
아래와 같이 나오면 설치 되어있는 것. 아니면 아래 깃 설치 진행.
깃 설치
[이 링크]에서 진행. “Click here to download” 클릭.
설치 진행. 아래 그림들을 참고하며 설치. 그림이 없는 창에선 그냥 Next.
깃은 커맨드라인 쉘을 통해서만 가능하다.
커맨드라인 쉘보다는 그래픽 쉘이 더 직관적이고 쉽다.
이를 위해서는 깃 관련 또다른 프로그램을 다운 받아야한다.
소스트리, 깃포크, 깃헙데스크탑이 대표적이다.
소스트리는 [이 링크]에서 설치. 설치 마지막에 SSH 설정을 묻는 창에선 아니오 눌러도됨.
따로 설정한 값이 있다면 예.
(건너뛰기를 누른다)


커밋과 푸시
- 레포지토리 생성
(레포지토리를 만든 적이 있을 때)
(레포지토리를 만든 적이 없을 때)
- 레포지토리 이름 설정
- README파일 생성, gitignore파일 생성.
리드미 문서는 해당 레포지토리의 얼굴과 같다.
추후에 리드미를 꾸미면 회사 지원할때도 좋다고 한다.
- 리모트(Remote)
리모트 레포지토리 주소 얻어오기
- 실습용 폴더 생성
경로에 한글이나 띄어쓰기가 없게끔 하기 위해 드라이브에서 가까운 위치에서 만들어야 함.
프로그래밍할때는 경로에 민감해야함.


해당 폴더에서 주소창에 "cmd"를 치면 해당 경로의 커맨드라인 쉘이 나온다
- git clone 명령어
클론 받을 폴더는 비어있어야함에 주의.

“git clone [리모트 레포지토리 주소]” 타이핑 후 엔터.
성공 시 다시 명령어를 입력할 수 있는 프롬프트(빨간 화살표)가 나옴.
항상 다시 입력 가능한 상태가 될 때까지 대기해야함. 중간에 끄면 안됨.
폴더도 생성됨. 지구 어딘가의 데이터 센터(리모트)에 있는 레포지토리 내용을
내 집의 컴퓨터(로컬)로 복사 해오기 성공.
이 폴더를 “로컬 레포지토리 폴더” 라고 부른다.
※ 로컬 레포지토리 폴더에 들어갔는데 .git 폴더가 안보인다면.
보기 탭의 숨긴 항목을 표시하여 .git이 표시된다면 git clone이 잘 된 것이다.
※ 언리얼 프로젝트 같은 대용량을 불러올 때에는 zip파일을 다운로드하기 보다는 cmd에 git clone을 쳐서 다운로드 받는 것이 파일손실, 에러 없이 불러올 수 있다.
- git status
로컬 레포지토리에서 git status 명령어로 상태를 확인한다.
위 사진은 리모트와 로컬의 차이가 없는 상태라는 뜻이다.
- CMD로 add, commit, push
우리가 누군가에게 대용량 파일을 보낼 때는 그냥 안보냄.
알집으로 압축해서 보내는 편.
- add: 압축할 파일들을 폴더에 몰아두는 것. stage라고도 함.
- commit: 해당 폴더를 압축하는 것.
- push: 압축된 파일을 리모트로 전송하는 것.
1) git add . 명령어로 압축할 파일들 선별하기
.은 모든 파일을 압축하려 할때 사용. 추후에 다른 인자도 써보자.

1. git status 명령어로 현재 상황 파악
2. git add . 명령어로 모든 파일을 압축하겠다고 선언!
3. 다시 git status 명령어로 현재 상황 파악
2) git commit -m “커밋메세지” 명령어로 압축하기
1. git commit -m “커밋메세지(부가설명)”를 통해 압축 성공. 커밋 메세지에는 적절한 내용을 적어주면 됨.
2. git status를 통해 확인해보니, 커밋할 게 더이상 없다고 나옴. 정상.
3) git push 명령어를 통해 리모트 레포지토리에 올리기
git push 명령어를 타이핑 후 엔터를 치면 세 가지 경우로 나뉨.
1. 최초 로그인 창 팝업.
2. 아이디 선택
3. 아무 일 안생기고 푸시 완료. 이 경우엔 아래 내용 무시.
이런 화면이 뜨는 경우.
여기서 Sign in with your browser 클릭 후 크롬창이 뜨면,
해당 창에서 로그인 해주면 됨.

다시 CMD 창을 보면 git push 명령어가 성공한 것을 볼 수 있음.
리모트 레포지토리를 확인 해보면 커밋 메세지도 잘 보임.
※ 소스트리로 add, commit, push
- 소스트리에서 로컬 레포지토리 관리

1번에 보이는 + 버튼 클릭. 새 탭을 만들 수 있습니다.
2번에 Add 클릭. 기존에 있는 로컬 레포지토리를 추가하고자 합니다.
3번에 Browse 클릭.
Browse 클릭 후 나오는 다이얼로그에서 로컬 레포지토리 폴더를 선택.
로컬 레포지토리 폴더에는 위 그림과 같이 .git 폴더가 보여야함.
절대 .git 폴더에 들어가서 폴더 선택하지 마세요! 폴더 이름이 과제이름/팀플젝이름이어야 합니다!!!
성공 후 화면.
- 소스트리 살펴보기
1. File Status가 어딨는지 찾아봅시다.
2. History가 어딨는지 찾아봅시다.
3. BRANCHES가 어딨는지 찾아봅시다.
4. REMOTES가 어딨는지 찾아봅시다.
- [Commit 전 주의사항]
비주얼 스튜디오를 끄고 커밋해야함.
혹시라도 저장하지 않은 파일이 있다면, 비주얼 스튜디오를 끄면서 저장하겠냐는 창이 나옴.
파일을 저장하지 않은 채로 커밋/푸시하면 어떤 파일은 올라가고 어떤 파일은 그대로 잔류.
습관적으로 모든 파일 저장 및 커밋 전 비주얼 스튜디오 꺼두기.
- 변경사항 만들기
1번: 프로젝트에 변경사항이 생기면 이곳에 “커밋할 내용이 1개 있습니다.”라고 표시됩니다.
2번: History에도 “Uncommitted changes”라고 나옵니다.
- 스테이지(Stage == Add)
Stage All 버튼을 클릭하면, 이전 시간에 배운 “git add .” 명령어와 동일한 작업이 진행됨.
압축 파일의 대상이 될 파일들을 선별하는 것.
압축 파일의 대상이 된 파일들.
- 커밋(Commit)
1번 위치의 커밋 메세지를 작성.
2번 위치의 Commit 버튼 클릭.
커밋을 완료 한 뒤 모습. Push 버튼과 main 브랜치 옆에 1 표시가 생겼다.
origin/main과 origin/HEAD는 이전 커밋에, main 브랜치만 신규 커밋에 위치하고 있음.
이후에 배우겠지만, origin/이 붙은 브랜치를 리모트 브랜치라고 함.
main 브랜치는 로컬 브랜치.
- 푸시(Push)
Push 버튼 클릭. 클릭하면 아래와 같은 다이얼로그가 뜸.
1번에 로컬 브랜치가 main인지 확인. 추후에 여러 브랜치의 커밋을 한 번에 Push 할 수도 있음.
2번에 리모트 브랜치가 main인지 확인. 리모트 브랜치를 수정 할 수도 있음.
3번 Push 버튼 클릭.
이런 창이 뜰 순 있으나, 이전의 방법대로 계정 선택하고 Continue.
Push 성공시 main 브랜치, origin/main, origin/HEAD가 모두 최신 커밋에 위치함.
리모트 레포지토리 확인.
댓글
댓글 쓰기