본문 바로가기
tool/Git

[Git 사용하기 Step2] 깃 저장소 로컬과 원격, 버전 관리 한번에 성공하기

by code cleaner 2021. 7. 14.
반응형

실제 프로젝트를 할 때에는 git bash를 사용하지 않고, gitlab, githubDesktop 등의 UI를 활용하여 소스 브랜치를 merge하는 등 관리하고 , 원격 저장소에 push하여 깃에 업로드 하여 사용한다.

 

하지만, 기본을 알아야 운영 원리를 알 수 있기 때문에, git bash를 기준으로 작성한다.

 


step1 : 로컬에서 깃 원격 저장소와 연결하여 사용할 work-space를 만든다.

 

1. 윈도우 버튼 + git bash 클릭하여 git bash 실행한다.

2. git bash에서 깃을 사용할 폴더로 이동하여 깃 초기화를 진행한다.

luck@DESKTOP-F3U0UO9 MINGW64 ~
$ pwd #현재 디렉토리 확인
/c/Users/luck

luck@DESKTOP-F3U0UO9 MINGW64 ~
$ mkdir -p main_worker/finance_project # 새로 작업 폴더 만들기

luck@DESKTOP-F3U0UO9 MINGW64 ~
$ cd main_worker/finance_project/ # git을 사용할 폴더로 이동하기

luck@DESKTOP-F3U0UO9 MINGW64 ~/main_worker/finance_project
$ ls -al # 현재 폴더에서 숨김폴더 및 파일 모두 확인하기
total 4
drwxr-xr-x 1 luck 197121 0 Jul 13 22:36 ./
drwxr-xr-x 1 luck 197121 0 Jul 13 22:37 ../

luck@DESKTOP-F3U0UO9 MINGW64 ~/main_worker/finance_project
$ git init # 깃 초기화
Initialized empty Git repository in C:/Users/luck/main_worker/finance_project/.git/

luck@DESKTOP-F3U0UO9 MINGW64 ~/main_worker/finance_project (master)
$ ls -al # 현재 폴더에서 숨김폴더 및 파일 모두 확인하기 
total 8
drwxr-xr-x 1 luck 197121 0 Jul 13 22:39 ./
drwxr-xr-x 1 luck 197121 0 Jul 13 22:37 ../
drwxr-xr-x 1 luck 197121 0 Jul 13 22:39 .git/ # 깃 초기화로 폴더가 생김

luck@DESKTOP-F3U0UO9 MINGW64 ~/main_worker/finance_project (master)
$

step2 :  github에 가입하여 레파지토리를 만든다.

(혹은 원격저장소에 가입하거나 권한을 받는다)

 

깃허브에 가입해서 사용한다면, Repositories에서 'new' 버튼을 눌러 새로운 레파지토리를 만든다.

 

레파지토리 명을 만들고 가장 중요한 것은 'Public'과 'Private'을 선택하는 것이다

용도에 맞게 선택하면 된다.

'Public'의 경우 : 모든 사람들이 확인할 수 있다.

'Private'의 경우 : 특정 사용자를 초대하여 공유할 수 있으며, gitbash 등으로 관리시 git허브에서 private 키를 등록해줘야 한다.

=> private으로 설정하여 만들었다.

처음 레파지토리를 생성하면 이렇게 쓴다

아래 커맨드 라인에 입력하라고 하는 대로 git bash에서 입력을 진행한다.

처음에 git init을 실행했기 때문에 그 다음부터 기입한다.

[참조] 한번 코드를 원격 저장소에 올리면 아래 처럼 code부분으로 확인할 수 있다.

step3 :  SSH-key를 생성하여 깃허브 계정에 등록한다.

 

git bash에서 키생성

더보기
luck@DESKTOP-F3U0UO9 MINGW64 ~/main_worker/finance_project (master)
$ ssh-keygen // ssh key 생성
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/luck/.ssh/id_rsa): //엔터누르기
Created directory '/c/Users/luck/.ssh'.
Enter passphrase (empty for no passphrase): //비밀번호 입력
Enter same passphrase again: //비밀번호 입력
Your identification has been saved in /c/Users/luck/.ssh/id_rsa //private 키생성
Your public key has been saved in /c/Users/luck/.ssh/id_rsa.pub //public 키생성
The key fingerprint is:
SHA256:..... luck@DESKTOP-F3U0UO9
The key's randomart image is:
+---[RSA 3072]----+
|.........        |
|..........       |
|o..........      |
| ..........o.    |
| ..........      |
|..........       |
|   ..........    |
|   ..........    |
|   ..........    |
+----[SHA256]-----+

key를 깃허브에 등록하기 (public/private 모두 등록)

/c/Users/luck/.ssh 폴더에서 id_rsa파일을 열어서 private key를 복사하여

깃허브 계정의 settings에서 SSH and GPG keys를 눌러서 key를 등록한다.

/c/Users/luck/.ssh 폴더에서 id_rsa.pub파일을 열어서 key를 복사하여

깃허브 계정의 settings에서 SSH and GPG keys를 눌러서 key를 등록한다.

step4 :  로컬 저장소와 원격 저장소 연결하여 사용하기

Case1 : 기존 git에 있는 파일을 모두 가져오는 경우 

Case2 : git에 있는 파일 중 로컬에 있는 코드의 변경사항만 가져오는 경우 

$git pull

 

Case3 : 로컬에 있는 코드를  깃 원격 저장소에 저장하는 경우

$git add 폴더 또는 파일명

$git commit -m "입력 메세지"

$git push -u origin master 

 

 

 

반응형