Develop/Spring 공략

2024.12.23(Mon.)

쿼카홀릭 2024. 12. 23. 21:46

어느덧 사전 캠프가 끝나고 본 캠프가 개강하였다!

 

오늘 배운 것 : Git과 Github

 

개발자들이 가장 많이 쓰는 리눅스 명령어는 아래의 6개다!
꼭 외워두기!!

1. pwd(print working directory)
- 현재 터미널에서 작업하고 있는 위치를 알려줌

내가 작업하는 폴더의 경로를 보여준다. 
~은 홈이라는 경로이며, 우리가 보는 데스크탑 보다 더 상위의 폴더를 의미한다.

2. LS(list)
- 내 폴더 안에 있는 파일을 보여주는 것

3. Ls - a(list all)
- 숨겨진 파일(보통 '.'으로 시작함)도 모두 볼 수 있음.
- 굳이 일반 사용자가 몰라도 되는 설정 파일을 숨겨둔다.
- 개발자들은 가끔 숨겨진 파일을 봐야할 때도 있다.

4. cd 폴더명(chang directory)
- Ls 명령어에서 확인된 폴더로 이동 가능 
- cd ..(한 단계 위의 폴더로의 이동)

5. mkdir 폴더명(make directory)
- 현재 경로에서 폴더를 만드는 명령어

6. touch 파일명
- 현재 경로에서 파일을 만드는 명령어

 

<Git>

Git이란?
- 코드 변경점을 기록한 것
- 버전 관리 도구(형상 관리 도구)
- 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것(면접용 멘트)

 

변경 기록이 다 남아 있다.
하나의 폴더 내에서 코드의 변경점을 기록하기 위해 git을 사용
에러 발생 시 과거의 코드 기록으로 쉽게 돌아가기 가능하다.

 

Git 필수 명령어

1. git init
: 코드 관리를 시작하는 명령어
initialize(초기화 하다, 초기세팅하다)의 준말
정확한 프로젝트 폴더(경로)에서 입력해야 함
잘못하면 데스크탑 전체 파일, 폴더가 다 기록된다.

코드를 작성할 폴더를 만들고 VScode에서 만든 폴더를 열기
좌측에 만들어둔 폴더 이름이 나와 있으면 됌.
파일을 하나 만들고, 텍스트 입력하고 저장 하기.
새 터미널을 열어준다. window는 bash로 작업해야 작동이 잘 된다.
경로 확인 필수!!
git init을 치면 initialize empty ~ 메세지가 뜨면 성공
.git 이라는 폴더가 숨겨진 상태로 만들어짐.
ls-a를 치면 . git가 생성된 것을 알 수 있다.
.git 를 지우려면 rm-rf.git를 치면 지워진다.

2. git add&commit
:코드를 저장하는 명령어

git add 파일명 또는 git commit -m "메세지 작성"
메세지 부분은 내가 어떤 코드를 썼는지 자세하게 써놓는게 중요하다.
please tell me who you are이라는 에러 발생하면 계정 설정하면됨.(강의 자료 참고)

왜 저장 명령어가 2개 일까?
add는 저장할 파일을 지정하는 것이고 commit이 실제로 저장하는 명령어 이다.

3. git status
: 저장 여부 확인하는 명령어
빨갛게 표시된 파일명은 변경은 했지만 저장 안된 파일을 의미

만약, 변경할 파일이 10개 또는 100개면 어떻게 하나?
내 프로젝트의 변경사항을 한번에 지정하는 법!
git add .('.'은 현재 나의 경로에 있는 모든 것을 의미)
git commit -m "메세지"
git status 쓰고 엔터 누르면 커밋 할 것이 없다라고 뜸.(nothing to commit)

4. git log
:저장한 내역을 확인하는 명령어
커밋 메시지로 코드 변경점 추측 가능
노란색으로 commit id가 나옴.
git diff로 코드 변경 확인하거나 git reset으로 과거로 돌아갈 수 있음.
git log를 치면 end로 키보드가 안쳐질 때는 q 누르고 빠져나오면 됌.


Github이란?
- 백업과 공유가 가능한 온라인 코드 저장소
- 공유해서 협업이 가능

 

<Github으로 코드 백업 하기>
git hub에서 new라는 버튼 누르고 github repositoty를 만들면 된다.
만들어진 git hub에서 ...push an~ 에 있는 명령어 3개를 복사해서
터미널에 붙여넣고 엔터 치면 된다.
그러면 레포지토리에 올라가짐.

1. git push
: 추가로 수정된 코드 github에 반영하기

1) 코드 수정
2) 코드 저장 명령서 실행 git add와 git commit -m "메세지"
3) git push origin 브랜치명 을 쓰면 됌. 브랜치 명에는 보통 main을 쓴다.

 

2. git brunch -M main
-기본 브랜치 이름 = master
- 현재 브랜치명(master)을 main으로 바꾼다.

3. git push -u origin main

 

<Github 협업하기 + 충돌 해결하기>

1. 초기 프로젝트 코드 작성
2. github 레포지토리 생성
3. 코드 github에 올리기(git push)

1. 협력자(collaborator)등록하기
setting->collaborator->사람들 추가하기(add people)

2. 코드 복사해오기 - git clone
레포지토리에 코드를 눌러서 작업할 폴더 만들고 VScode에서 폴더 열어서 터미널 열고, url  복사해서
git clone url 주소. 을 입력해야함!
.을 안 치면 불러오는 위치가 안 맞음!! 무조건 .을 누르기!!

3. 팀원도 코드 변경하고 github에 올리기
코드 수정-코드 저장 명령어 실행-git push origin 브랜치명(일단은 main을 써라!)

git pull로 다른 사람의 변경 사항을 가져온 다음에 git push를 해야 가능하다.
git pull origin 브랜치명(일단 main을 써라!)

git pull 할 때 터미널에 아무것도 입력이 안되는 vim 에디터가 뜬다면?
1. 키보드 esc  : wq enter

충돌하면 어떻게 해야하나요?
conflict로 뜨고 충돌이 발생한 파일을 살펴봐야함
같은 파일에 같은 위치에 코드가 변경 되었기 때문.
ex) ㄱ개발자가 index.html 파일의 2번쨰 줄 코드를 수정하고 push했다.
ㄴ개발자가 같은 위치를 수정하고 push 하려고 하니 충돌이 난다.
충돌된 코드가 둘 다 나옴.

충돌 해결하기
삭제할 부분 삭제하기
1. 코드 수정
2. 코드 저장
3. 코드 push

 

오늘도 화이팅 했다💕

'Develop > Spring 공략' 카테고리의 다른 글

[Spring] 카카오맵 API 사용 초기 세팅  (0) 2025.04.22
[Spring] Spring JPA - Page 와 Slice  (0) 2025.04.01
[Kiosk] 트러블슈팅  (0) 2025.01.21
[Calculator] Lv.2 트러블슈팅  (0) 2025.01.10
[Calculator] Lv.1 트러블슈팅  (0) 2025.01.10