Etc

[Git]깃허브에 새 프로젝트 저장하는 법

꼬드리 2022. 10. 21. 16:07

귀여운 고양이 로고를 가진 깃허브.

깃허브란?

소스를 효율적으로 분산 관리하는 시스템인 '깃Git'을 쓴 프로젝트를 지원하는 일종의 클라우드라고 할 수 있다. 클라우드에 코드를 올리고 내려받는 식으로 진행되며 쉽게 백업, 복원, 추적, 공유, 협업, 수정이 가능하다는 강점을 가진다.

협업이 필요한 개발 분야에서 꼭 언급되는 곳이라고.

깃으로 로컬 저장소에 먼저 저장을 한 뒤, 작업한 부분을 깃허브에 올리는 방식으로 이뤄진다.

 

 

그렇다면 깃허브에 새로운 코드 파일을 저장하는 방법을 아주 가볍게만 알아보자.

이를 위해서는 깃허브 https://github.com/ 에 가입이 되어 있어야 한다! 

 

 

 

1. 작업하던 코드 에디터를 열고 거기서 터미널을 연다. 본인이 VS Code를 에디터로 쓰고 있기 때문에 이걸 기준으로 적겠다. 터미널(단축키 ctrl + ` 백틱) 을 열면 가장 먼저 윗줄에 자신이 작업중인 폴더가 보인다.

요상한 코드가 떴는데, 마지막에 보이다시피 'daekwang'이라는 이름을 가진 폴더에서 작업을 하고 있었다. 만약 html-css같이 상위 폴더가 마지막으로 떠있는데 나는 하위 폴더인 daekwang만 깃허브에 올리고 싶다면, 

cd "폴더이름" 을 쓰고 엔터쳐서 저장하고자 하는 폴더로 들어가야 한다. 안그러면 상위폴더가 통째로 다 저장되어 버리는, 비효율적 사태 발생...

 

2. 폴더 위치 확인했다면 다음으로 터미널에 작성해줘야 하는 것이 있다.

git init 
git add .
git commit -m "init"

위에 한 줄씩을 치고 엔터를 쳐준다. 수상한 에러가 뜨지 않고 하얀 글씨가 주르륵 뜨면 성공적으로 하는 중이다. git init을 통해 폴더 내에 .git폴더를 생성하고, 작성된 내용을 git이 추적할 준비를 마친다. add . (반드시 점 찍어야 한다!)을 써서 전체 내용을 다 올리겠다고 선언한 뒤 commit의 "" 안에 자신이 수정한 내용을 적당히 명명해서(init이 아니어도 된다.)무엇을 수정했는지 나중에 알아보기 쉽게 처리해준다.

add . 과 commit -m ""는 나중에 이미 올려둔 파일을 수정 보완하면서도 마르고 닳도록 쓰게 된다.

 

3. 이쯤해서, 미리 가입해둔 깃허브 창을 열어 로그인 하고 들어간다. 새 레파지토리repositoty의 이름을 지어주고 하나 생성해준다. 작업 중인 파일의 이름과 똑같이 지정해주면 나중에 정리하기에 더 좋을 것이다.

위와 같이 프라이빗하게 개인 용도로 만들 수도 있다. 물론 퍼블릭도 가능하다는데... 아직 안 써봤다. 음. 파일만 단순히 저장할 때에는 프라이빗으로 쓰는 게 좋은 것 같다.....

어쨌든 레파지토리를 만들면 들어가서 우측에 초록색으로 예쁘게 생긴 code 버튼을 클릭한다. 그러면 레파지토리 주소가 뜨고, 그것을 전체 복사해서 다시 터미널로 돌아온다. 

개인정보인가? 해서 일단 가려봤다. 저 주소를 복사.

 4. git remote add origin 을 쓴 뒤에 아까 복사한 주소를 바로 넣고 엔터 쳐준다. 저 레파지토리 주소를 앞으로 Origin라는 이름으로 저장하고, 그거만 써서 올리겠다는 일종의 선언이다. 이렇게 저장한 덕분에, 앞으로 업로드할 때에는 저 주소는 잊어버려도 된다. 

 

5. git push origin master 이라고 마지막으로 쓰고 엔터 치면 끝! 폴더 내에 있던 파일들이 레파지토리에 다 완벽하게 올라가있는 것을 홈페이지에서 볼 수 있다. 이제 Git이 파일을 언제, 어떻게, 어느 부분을 누가 수정했는지 추적이 가능해졌다. 

 

 

이제 작업하던 파일을 조금 수정하고, 다시 깃허브에 수정된 파일을 덮어쓸 계획이라고 가정해보자. 파일은 이미 위와 같이 최초 init을 마친 상황이다. 이럴 때에는 어떻게 해야 할까?

다시 터미널을 열어준다.(ctrl + `가 손에 익게 노력해보자 ㅎㅎ) 

그 다음, 폴더명을 다시 확인하고, 

git add . 
git commit -m "(대충 뭐... 헤더 만들었으면 header...)"
git push origin master

이 세 개만 쓰면 끝! 손댄 파일이 header이라는 태그들 달고 올라가 있는 걸 볼 수 있다. 파일 전체를 싹 덮어씌우는 게 아니라 전과 달리 바뀐 부분만 저장된다는 점에서 수정 보완 복원하기에 정말 편리하다.

이 외에도 Branch 등 협업할 때 쓸 수 있는 것들이 몇 개 더 있는데, 그건 나중에 더 알아보는 걸로. ...