이전 글
깃(Git)과 깃허브(Github) 공부하기 - 2 (branch)
Github 원격저장소를 사용하기에 앞서, git bash 콘솔에서 원격저장소를 사용해보고 원리를 파악해보자
<원격 저장소>
- 소스코드와 버전을 백업하고 인터넷을 통해 서로 다른 컴퓨터에서 협업이 가능한
- 지역 저장소와 동기화되어 연결되는
1. 워킹 디렉토리 (깃 실습 가장 상위 디렉토리) 생성
mkdir gitfth3 > gitfth3 폴더가서 f1.txt생성 (vim f1.txt), 내용아무거나 입력> git add f1.txt > git commit -m 1
2. git init local(local이라는 이름의 디렉토리명)
=> gitfrh3/ local/ .git 의 구조로 디렉토리 생성됨
3. git init --bare remote (remote라는 이름의 디렉토리명)
: --bare는 작업은 할 수 없고 그냥 저장소로서의 기능만 수행 할 수 있는 저장소를 만드는 옵션
결과 : 아래에 나와있는 경로에 local , remote 디렉토리 생성됨
=> gitfth3 / local/ .git
=> gitfth3 / remote/ (아래사진 : .git폴더없이 그안에 있는 파일들만 생성됨)
cf. 보통 원격저장소는 원격저장소를 어떠한 작업도 불가능하게 하기 위해서(순수하게 만들기 위해서) bare라는 옵션을 준다.
4.
remote라는 원격저장소에 로컬저장소를 연결시키고 push해보기 (로컬저장소는 local , 원격저장소는 remote 로 생각하자)
①
cd local : local 디렉토리로 이동한다
②
git remote add origin /home / gitfth3/ remote : remote와 연결
origin은 명령어가 아닌 임의의 이름. 뒤의 /home / gitfth3/ remote경로 정보를 저장한다. 매번 경로를 일일이 칠 순 없으니까
③
잘 되었는지 확인하기 위해 git remote -v
출력:
origin C:/Users/zhun0/Documents/gitfth3/local (fetch)
origin C:/Users/zhun0/Documents/gitfth3/local (push)
cf.
저장소를 지우고 싶다면?
git remote remove origin
④
git push
현재 브랜치는 master이다 이 명령을 하면 연결시킨 원격저장소에 똑같은 이름의 master브랜치로 push 하는것.
출력: fatal오류.
그렇다면
git push --set -upstream origin master :
앞으로 master브랜치에서 푸쉬명령을 내리면, 자동으로 origin의 마스터로 푸쉬하겠다 라는 뜻.
즉 현재 로컬브랜치와 원격브랜치 사이의 명시적으로 연결을 세팅해주는 옵션
⑤
그리고 remote디렉토리로가서 git log 확인해보면,
local 디렉토리에서 커밋한 f1.txt 가 remote에도 잘 push 되어있는것을 확인할 수 있다
이 원격저장소를 다음 게시글에서 Github로 활용