개발 기록
> [Git/Github] 소스트리 사용 : 깃허브 레포지토리에 프로젝트 올리기 본문

1) 로컬저장소 등록
1. 소스트리 프로그램을 실행한 뒤, 'Local' (로컬저장소) 상태에서 상단의 메뉴 아이콘 중 'Add'를 클릭한다.

2. Add a repository : Git 저장소 추가
로컬 저장소 내부의 프로젝트 폴더를 선택한다.
정상적으로 경로를 지정한경우, 하단에 'Git 저장소입니다' 라는 메시지가 발생한다..
이후 하단의 '추가'버튼을 누르면, 소스트리에 해당 로컬저장소가 등록된다.

☆ 문제발생 ☆
적합한 복사본 경로가 아니라고 나오는 경우 => 프로젝트 내부에 .git 폴더가 없어서 생기는 문제이다.

☆ 해결방법 : 터미널로 프로젝트 경로에 진입해서 git init 명령어를 실행한다.
: git init 은 initialize(초기화) 를 의미한다. 이 명령어를 실행하기 전까지 폴더는 내 컴퓨터에만 존재하는 세상 평범한 폴더였지만, 이제는 버전 관리가 가능한 특별한 폴더가 된다.

2) 프로젝트 파일들 스테이지에 올리기 (* git add)
1. 스테이지에 올리지 않은 파일:
내 컴퓨터의 로컬저장소(Git 저장소) 폴더 내에 새로 추가한 파일, 변경한 파일 등 변경사항이 나타난다.
2. 스테이지에 올라간 파일
repository 에 올라갈(업데이트될, 커밋될) 파일들

3) commit 진행
커밋은 프로젝트의 소스 코드에 대한 변경 내용을 기록하는 것으로 스냅샷으로 생각하면 쉽다.
Git Bash 창을 사용했을 때, git commit -m "설명" 명령어를 사용했던 과정과 같은 기능

커밋이 성공적으로 실행되면, 왼쪽 브랜치에 master 가 추가된 것을 확인 할 수 있다.

4) 원격저장소 연결 ( Github Repository 와 연동)

5) Push
1. 푸시할 브랜치(branch) 를 선택하고 push 버튼을 클릭한다.

☆ 문제발생 ☆
github 에서 repository를 만들 때, README.md 파일을 같이 생성해서 충돌난 것이다.

☆ 해결방법 1: git pull 명령어로 원격 repository를 pull 받는다. (fetch, merge 진행된다.)
git pull origin master
☆ 해결방법 2: 문제가 지속적으로 발생시, commit 히스토리가 서로 연관성이 없어서 merge가 거절된 것이다.
아래 명령어를 입력한다.
--allow-unrelated-histories : 서로 관련되지 않은 두 개의 Git 저장소를 단일 히스토리 타임라인을 사용하여 하나로 결합하는 방법.
git pull origin master --allow-unrelated-histories

git status 로 상태 확인.

push 재진행
git push -u origin master
-u :해당 브랜치의 upstream을 설정하는 명령
'GIT' 카테고리의 다른 글
| > [Git] .gitignore 적용되지 않을 때 해결 방법 (0) | 2024.03.04 |
|---|---|
| > Git 이름 규칙 (repository naming & Message Convention convention) (0) | 2022.11.14 |