개발/Git

[Git] 원격 저장소 Clone 복제 및 저장소 만들기까지

hayeonn 2022. 11. 30. 18:27
반응형

오늘은 직접 원격 저장소를 Clone(복제)하고 내가 버전관리를 하기위해 저장소를 만들었다.

 

1. 저장소 clone 하기

먼저 likelion 파일안에 들어가서 작업을 해야한다.

그리고 git clone <원격 저장소 주소> 를 해주면 복제가 된다.

이때 복제가 잘 됐는지 확인하기 위해 ls (list) 확인해주면 된다.

 

2. .git 삭제 (중요)

이때 복제를하고 ls -a 를 하면 모든 파일이 보여지는데 이때 .git 파일을 삭제해야한다.

이유는 복제 후 main 이라고 뜨는 것은 이미 git이 관리하고 있다는 뜻이다. (commit 이력이 있고 history가 같이 딸려옴)

그리고 파일을 수정후 push 할 때 내가 관리하는 저장소가 아닌 가져온 저장소에 올라가게 된다. (가장 큰 이유)

마지막으로 .git 을 삭제하면 main branch가 삭제된다!!

 

3. 나의 계정에 새로운 저장소 만들기

받아온 내용들을 직접 관리하기 위해서 github에 새로운 저장소를 만든다.

 

4. 내 저장소에 받아온 파일 집어넣기

git init 을 통해 저장소를 다시 생성해준다.

그러면 다시 .git 이 생성되고 main branch가 생성된다.

이때 새로 만든 저장소를 추가해준다.

git remote add origin <새로운 저장소 주소>

이때 add 다음에 origin 을 붙여줘야한다! 처음에 안붙여서 오류뜸.

그리고 확인해주면 정상적으로 저장소가 추가된걸 볼 수 있다.

 

5. 새 저장소에 git push 해주기

git add . 를 통해 한번에 추가하기

지금은 워킹 디렉토리 상태에 있는 것을 볼 수 있다. 이때 새 저장소에 모든 파일들(빨간색)을 다시 넣어줘야한다.

 

다시 git status 를 통해 보면 Staging Area 상태(초록색)에 있는 것을 볼 수 있다.

push 하기 전에 git commit -m "<메세지>" 를 해준다.

 

이제 git push origin main 을 통해 push 해주자.

 

그러면 내가 만든 저장소에 모든 파일들이 push 된 것을 볼 수 있다!

 

(추가사항) 폴더 이름 변경하기 : mv

폴더 이름이 길어서 임의로 HTML5로 변경해 줬다. 

이때 오류가 난 이유는 webcafeHTML5 가 아닌 likelion 으로 다시 들어가서 폴더명을 바꿔줘야함!!

폴더는 likelion 안에 있기 때문 <<

 

 

6. .gitignore 에서 추가 작업하기

.gitignore 파일이란?

Git의 root 디렉토리에 저장되어 Git Repository나 Staging Area에 추가되지 말아야하는 폴더나 파일을 정의한다.

이 파일들은 Staging Area에 올라가지 않기 때문에 git status를 했을때 보이지 않는다.

따라서 *.txt 를 통해 모든 텍스트 파일이 Staging Area에 올라가지 않도록 설정해둔다.

(실제로 txt파일 이름은 살짝 희미하게 보임 - 밑사진 참고)

 

7. 개발 의존 모듈(패키지 프로그램) 설치

package.json을 클릭하고 터미널창에 npm i 를 통해 설치해준다.

그러면 결과적으로 node_modules 파일이 생성된다.

 

추가적으로 commit 확인 예시

1. 처음 모든파일들을 추가해준 것이 제일 밑에 깔림 (첫번째 커밋)

2. .gitignore에 추가해준 내용을 커밋한 것

3. 폴더 이름 변경을 나중에 해서 가장 위에 추가된 것

 

오늘 직접 원격저장소에서 clone 하고 내 저장소에 옮기는 과정을 작성했다.

사실 복제를 하는 방법이 아닌 degit 을 이용해 특정 부분만 복제하는 방법도 있다.

이 방법은 굳이 .git 폴더를 삭제하지 않고 애초에 history 없이 가져와 바로 내가 관리할 수 있게 된다.

두 방법 모두 같은 결과를 내지만 degit을 이용하는 법이 더 빠르긴 할 것 같다.