일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 셀레니움
- Selenium
- python buildpacks
- 2164 카드2
- Crawling
- geopandas
- 코랩 런타임
- 인스타그램
- 파이썬
- convert to shp
- clustering
- Merge Repositories
- 혁신성장부문
- colab runtime
- 플라스크
- 해시태그
- Chat-GPT
- plotly dash
- Python
- flask
- string to list
- NLP
- geoDataFrame
- 크롤링
- kmeans
- 백준
- 웹페이지
- 알고리즘
- to shp
- 괄호 문제
Archives
- Today
- Total
코딩코딩코딩
Merge Github Repositories (깃허브 레포지토리 병합) 본문
Github 정리 중 흩어져 있는 폴더들이 많아서 한 폴더로 옮기려 하는데 홈페이지에서 하는 방법이 있는지는 모르겠지만 잘 모르겠어서
로컬로 git clone 하여 연동 후에 merge하는 방법을 찾아 정리합니다.
먼저 깃허브 레포지토리와 로컬의 폴더를 연동시켜 놓은 후에 한 폴더로 합치고 싶은 레포지토리들을 모두 cloning한 후에 merge하는 순서로 진행했습니다. (Mac)
(저는 GitClone 폴더 내에 gitTest 내에서 진행했습니다. 로컬의 gitTest 폴더를 깃허브와 연동시켜 놓은 다음에 해당 폴더에 합치고 싶은 두 레포지토리를 cloning 하고 merge할 예정입니다.)
1. PC 디렉토리에 폴더 생성
Terminal을 켜고 아래 명령어 순서대로 입력
$ mkdir GitClone
## GitClone이라는 폴더 생성
## 어디에 생성되는지는 ls를 입력해보면 현재 위치한 디렉토리 알 수 있음
$ cd GitClone
## GitClone 디렉토리로 이동
$ mkdir gitTest
$ cd gitTest
## GitClone 내에 gitTest라는 디렉토리를 만들고 내부로 이동
2. Github에서 레포지토리 생성
홈페이지 우측 상단에 New Repository로 생성
3. 1번에서 이동한 디렉토리인 gitTest에서 아래 코드 입력
1)
$ git init
2)
실제 디렉토리 내에 .txt파일 하나 생성 (main.txt 생성함)
## Mac에서 .txt파일 만드려면 텍스트 편집기 켠 후에 환경설정에서 기본 설정을 리치텍스트 -> 일반텍스트로 변경 후 생성
3)
$ git add .
## 해당 디렉토리를 git으로 관리하겠다는 의미
## git add "파일명"으로 특정하여 진행할 수도 있음
4)
$ git status
## 현재 commit된 상태나 변경된 내용을 표시해 줌
5)
$ git commit -m "Your Message"
## 변경사항을 commit함
6)
$ git remote add origin 깃허브 주소
7)
$ git push -u origin master
이렇게 진행하면 로컬의 디렉토리를 깃과 연동하여 관리할 수 있게 됩니다.
3. 이후 깃허브의 두 레포지토리를 GitClone에 cloning함
$ cd GitClone
$ cd gitTest
$ mkdir A
$ mkdir B
# gitTest디렉토리 내에 옮기고자 하는 두 레포지토리와 이름이 같은 디렉토리 생성
$ cd ..
# 이전 디렉토리로 이동
$ git clone 레포지토리 A 주소
$ git clone 레포지토리 B 주소
# GitClone 디렉토리에 cloning
# 레포지토리들의 이름이 각각 RepositoryA, RepositoryB였다고 가정하면 cloning한 후에
# GitClone 디렉토리 내부에는 RepositoryA, RepositoryB 이름의 폴더가 두 개 생김
4. 레포지토리를 합칠 곳인 gitTest로 이동하여 remote를 가져옴
$ cd gitTest
$ git remote add MergeA ../RepositoryA
# git remote add [remote 이름] [옮길 레포지토리의 위치]
# remote 이름은 알아볼 수 있게 알아서 지정하면 됨
# $ git remote add [remote 이름] https://github.com/아이디/레파지토리이름.git
# 깃허브 주소로도 가능
5. 이후 한꺼번에 모으고자 하는 디렉토리에서 merge하면 됨
$ git fetch MergeA
$ git merge 레포지토리이름/브랜치명
# fetch 명령어를 입력하고 나면 아래의 내용이 나옴
# From ../RepositoryA
# * [new branch] 브랜치명 -> 레파지토리이름/브랜치명
# fatal: refusing to merge unrelated histories 에러 발생 시
$ git merge --allow-unrelated-histories 레포지토리이름/브랜치명
마지막으로 3 - (3~7) line을 다시 수행해주면 merge된 것들이 깃허브와 연동됨
참고
Comments