1.프로젝트 시작(git)

박종현·2023년 12월 20일

스프링 프로젝트

목록 보기
1/14
post-thumbnail

프로젝트의 시작

프로젝트를 시작하기 위해선 개발환경이 구축되어야하는데, 이를 위해서 Git을 활용해 Github를 연동할 것이다.

1. Git

✍Git은 버전 관리 시스템(Version Control System)이다. 즉, 프로젝트를 진행함에 있어서 수정해야 할 때, 새로 추가되는 사항이 있을 때, 즉각 반영시킬 수 있는 시스템이다. 파일의 변화를 지속적으로 기록해두었다가, 필요할 때 불러올 수 있도록 해주는 시스템이다.

👆 Git 홈페이지

우리가 프로젝트를 진행하면서 이러한 시스템의 도움을 받지 않는다면 수정본을 계속 생성해 가면서 진행을 하게될 것이고, 큰 프로젝트가 될 경우 수많은 수정본이 생성되면서, 각자 다른 파일을 보거나 검토할 수 있는 문제가 생기게 된다.

하지만, 버전 관리 시스템을 활용하게 된다면 시간에 따라 백업파일을 생성하면서 메인 파일이 업데이트되게 되는데, 문제가 생긴다면 과거 백업파일들을 확인하고, 문제가 있기 전으로 돌아가거나, 문제가 발생한 이유를 찾는데 도움을 받을 수 있게된다.

Git은 설치만 하고, Github를 다루면서 연동하는 방법을 소개한다.

2. Github

✍Github는 원격 저장소이다. 개발과정에서 소스코드를 작성하고, 저장하는 것을 기반으로 하는 호스팅 플랫폼 서비스이다. 소스코드를 직접 열고 확인 할 뿐 아니라 가벼운 버그를 잡아주며, 버전 관리에 도움을 주는 서비스를 제공하고 있다.

👆 Github 홈페이지

Git을 사용하여 프로젝트를 개발할 때, 소스 코드를 저장할 저장소가 필요하게 되는데, 모두가 접근 가능한 저장소에서 사용해야 모두가 접근하고 수정 및 업데이트를 진행 할 수 있게 된다. 이러한 원격 저장소 중 가장 자주 사용되는 것이 바로 Github이다.

개발하면서 다른 사람의 소스코드를 확인하고 참고하거나 다른 사람의 코드를 읽고 해석하는 것이 코딩 실력에 많은 도움이 되는데, Github에서 다른 사람들의 코드를 읽어보고 해석하여 자신의 것으로 만들거나, 오픈 소스 개발에 참여할 수 있다는 장점이 있다.

3. 연동 과정

  1. 원격 저장소 생성
    Github를 들어가고 로그인을 하게 되면 다음과 같은 화면을 보게 된다.
    좌측 상단의 Top Repositories 옆 New를 눌러 새로운 Repositories를 만든다.

    Repository name(저장소 이름)을 지정해주고, 편의성을 위해 Add a README file 추가를 클릭했다면, 생성할 준비가 완료된 것이다. 그 후 Create Repository를 클릭해준다.

    Repository 생성완료 된 모습.

  2. Git과 원격 저장소 연동.
    Github를 통해 만든 원격 저장소를 Git과 연동하는 과정이다. 연동을 위해, Git을 설치하고, 컴퓨터에서 사용할 폴더를 만든다.
    Git bash를 실행 해주고, cd명령어를 이용해 만들어둔 폴더로 이동한 후, Git init으로 초기화를 해준다.

cd [이동할 주소] (ex. cd c)
git init

만약, 처음 Git bash를 사용한다면, 사용자 최초 설정을 해준다.

git config --global user.email "~~~~~@~~~.com(이메일 주소)"
git config --global user.name "~~~~~(닉네임)"

그리고 내가 만든 저장소와 연동을 시작한다.

git remote add [저장소 별명] "~~~~~.git(원격 저장소 url)"
  • 연동하는 과정에서, Github는 기본 branch가 main이고, Git은 기본 branch가 master였다. 그래서 연동하여 push를 하면 새로운 branch인 master가 새로 생겨서 내 생각과 다르게 commit&push가 되었다. 해결 방안은 내가 사용하는 branch를 main으로 바꾸고 pull을 하면 main으로 commit&push가 가능했다.
해결 방안
git branch -M main (사용하는 branch를 main으로 바꿔준다.)
git pull [저장소 별명] main --allow-unrelated-histories (기록을 드문 상황에만 사용한다는 의미)

main으로 push가 가능하게 된다.

이렇게 연동하는 과정을 모두 적었다.

4. 다음 할 내용

다음에는 스프링을 이용한 프로젝트 개발을 할 것이므로 스프링을 개발하기 위한 준비와 Git으로 commit&push 과정을 작성할 예정이다.

0개의 댓글