tuter77

Git : repository 정리 본문

GitStudy

Git : repository 정리

tuter77 2023. 1. 29. 19:17

git 강의가 끝나고 실습에서 생성했던 repository가 어지럽혀져 있어 정리하는 과정을 가졌다.

https://velog.io/@ejayjeon/Github-Repository%EB%93%A4-%EA%B9%94%EB%81%94%ED%95%98%EA%B2%8C-%ED%95%98%EB%82%98%EB%A1%9C-%ED%95%A9%EC%B9%98%EA%B8%B0

 

[Github] Repository들 깔끔하게 하나로 합치기

github 로그인 > Your Repositories 에 들어가면 내가 만들거나 속해있는 레포지토리들을 확인할 수 있습니다. New 버튼을 눌러 기존의 레포지토리들을 합칠 새로운 레포지토리를 생성합니다.저는 Project

velog.io

이 블로그를 참조하여 레포들을 한 레포의 하위레포들로 모았고 합치고 난 후에는 일일히 남아있는 레포들을 삭제하는 과정을 거쳤다.

 

먼저 레포를 합치려면, 다른 레포들이 들어갈 레포를 하나 생성하고(내 경우엔 git_study로 만듦), 코드 에디터에서 해당 레포를 클론했다.

 

git clone (url)

 

그 후 클론한 레포의 폴더가 생성이 되면, 합칠 레포들을 명령어로 일일히 입력해줘야하는데 사용하는 명령어는 아래와 같다.

 

git  subtree add --prefix= 레포명 레포주소 해당 브랜치명 

 

이 명령어를 이용하면 새로 만든 레포 안의 하위 레포로 넣을 수 있는데, 내 경우엔 커밋로그가 없어 계속 fatal 오류가 났었다. 

 

몇 번의 시도끝에 커밋 로그가 없어서 안된다는 걸 알게되어, readme 파일을 간단히 만들어 add, commit 해준 뒤에는 정상 작동했다.

 

각 하위 레포들을 모두 명령어로 입력해주고 나면, 깃허브 사이트에서 확인할 수 있는데 기존의 레포들이 그대로 있고, 새로 만든 레포 안에도 하위레포가 형성되어있는것을 볼 수 있다. 

 

혹시 각 레포가 연동이 되어있나 하나씩 지워보니 연동이 되지 않았음을 알 수 있었고, 나는 일일히 밖에 나와있는 하위레포들을 지웠다.

 

지우는 과정에서는 settings에 들어가 가장 아래쪽에 delete항목이 있는것을 확인할 수 있다. 

 

*(번외로 이번에 레포를 정리하고 난 후 폴더경로가 틀어져 main으로 push, pull이 되지않는 참사가 일어났다.

학습할때엔 바탕화면에 폴더를 만들고 저장해, 바로 push해서 레포에 넣었었는데 레포지토리 정리를 하고난 후 바탕화면의 폴더들도 다 workspace라는 한 폴더를 지정해 넣었더니 에러가 계속 발생했다.

 

과거에 공부했던 레포들도 remote는 되었으나, pull이 되지않아 당황했었는데 방법을 못찾아 결국 폴더 밖으로 기존 폴더들을 다 빼내어버렸다.(그랬더니 pull이 되었다.)

또한 push나 pull request도 되지않았는데, 강제로 푸쉬를 하는 git push 주소 main --force를 활용해 해결했다.(강제푸쉬한 레포에는 별 파일이 없어서 가능했다.)

pull request의 경우 강제로 푸쉬해서 해결했지만, PR작성이 되지 않는 원인을 여전히 모르겠다. 연결상의 문제였는지, 경로가 차이가 나서 그랬던건지 모르겠다. 

지금은 다시 잘된다.) 

 

위 내용은 2022.12.16에 공부한 내용입니다.

링크 : https://dudwls3278.tistory.com/14