티스토리 뷰

728x90

한개의 레포지토리에 여러 프로젝트를 생성하여 프로젝트를 진행 하고자 했다.

인텔리제이에서는 한개의 프로젝트에서 여러 프로젝트가 생성이 되었지만, 이것을 깃허브에 Push 하는 과정에서 계속 reject 되었다.

구글링 하면서 삽질했던 것을 기록하고자한다.

 

1. 깃허브에 한개의 레포지토리를 생성한다.

이때 생성된 레포지토리는 부모 레포지토리가 된다.

 

2. 부모 레포지토리를 clone 한다.

cms 창을 통하여 부모 레포지토리를 클론한다.

git clone [부모 레포지토리 주소]

 

이때 부모 레포지토리 주소는 깃허브에서 코드를 통하여 찾을 수 있다.

 

 

이때 부모 레포지토리가 비어있는 경우 아래와 같은 경고 글이 뜰 수 있다.

 

warning: 빈 저장소를 복제한 것처럼 보입니다.

 

이때는 아래 명령어를 통하여 해결 할수 있다.

 

git commit --allow-empty -n -m "커밋메시지"

 

3. 부모 레포지토리로 이동한다.

클론한 부모 레포지토리를 cd 명령어를 통하여 이동한다.

 

cd [부모 레포지토리 이름]

 

예를 들어 부모 레포지토리 이름이 abc 라면 cd abc 하면 된다.

 

4. subtree를 이용해 부모 리포지토리에 자식 리포지토리를 더해준다.

이 부분에서 삽질을 열심히 했었다^^

우선 명령어는 아래와 같다.

 

git subtree add --prefix=[폴더 이름] [자식 레포지토리 주소] [branch 이름]

ex) git subtree add --prefix=sub-project http://github.com/***/###.git main

 

여기서 폴더 이름은 부모 레포지토리에서 보일 이름을 작성하면 된다.

그다음 자식 레포지토리 주소를 작성하면 된다.

자식 레포지토리 주소를 착각을 하여 삽질을 하였다. 깃허브에 자식 레포지토리가 있어야 한다.

 

즉 깃허브에 존재하는 레포지토리를 subtree 를 통하여 위에서 생성한 부모 레포지토리에 넣을 수 있다.

 

5. 깃허브에 push 하기

 

git push origin main

 

이때 로그인 하는 과정이 요구될 수 있다.

여기서 아이디와 패스워드를 입력하면 되는데 패스워드를 입력하였더니 아래와 같은 오류 메시지가 나오면서 인증 거부가 되었다.

 

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/****/###.git/'

 

이것의 해결 방안은 깃허브에서 토큰을 발급 받아서 입력하면 된다.

 

 

 

 

 

[참고 링크]

https://velog.io/@049494/%ED%95%98%EB%82%98%EC%9D%98-%EB%A6%AC%ED%8F%AC%EC%A7%80%ED%86%A0%EB%A6%AC%EC%97%90-%EC%97%AC%EB%9F%AC-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%98%AC%EB%A6%AC%EA%B8%B0

728x90