Application Modernization/DevOps

윈도우에서 Git과 github을 사용해 보기

Cloud Applicaiton Architect 2021. 6. 27. 20:18
반응형

 

  • GIt은 리누스 토발즈에 의해 개발된 분산형 파일 버전 관리 시스템을 말함 
  • GitHub는 Git을 웹호스팅을 통해 관리할 수 있게 해주는 무료 웹사이트

git의 아키텍처

 

gitbash를 통해 윈도우 환경에 git을 사용할 수 있는 환경 구성 가능

 

1. PC의 윈도우 Git 레파지토리 구축을 위해 GitBash 설치(https://gitforwindows.org)

  • 윈도우에 Linux/Unix의 Bash Shell 기반 Command Line 명령어 입력 환경을 제공
  • Git Command 지원
  • GUI기반 레파지토리 관리 툴 제공

 

2. GitHub에 New Repository 생성 

 

3) GitHub 레파지토리 옵션 설정

  • Repository Name: 사용할 레파지토리의 이름을 기입(여기서는 ‘hello_git’ 을 사용)
  • Public : 레파지토리의 사용 범위 선택(여기서는 ‘Public’으로 선택 ) 
  • Public은 모든 사용자에게 레파지토리를 오픈하는 형태 
  • 단, 업로드의 경우 Public 이라도 계정을 통해 인증된 사용자만 등록 가능
  • Private를 선택한 경우 계정 당사자 이외에는 접근 불가

  • Create repository : 모든 설정이 완료되면 ‘Create repository’를 선택해 레파지토리를 생성

  • 레파지토리 생성을 통해 위 페이지 나오는 거 확인 

 

3. 로컬 Git과 웹 GitHub 연동

  • 1) PC상에 Git Repository위치로 쓸 디렉토리를 선택해 레파지토리 생성 
    Ex) C:\java-msa\git-repository
  • Git init 명령어 수행
  • 위에서 만든 로컬 레파지토리 디렉토리로 Bash shell을 실행해 이동

 

  • 이 예제에서는 C:\msa-java\hello_git을 레파지토리로 사용 
  • bash에서는 cd\ 명령어를 통해 원하는 디렉토리 접근 가능

 

  • git init 명령어 수행을 통해 git을 초기화

 

  • git remote add를 통해 hello_git 을 리모트에 연동

 사용되는 코멘드는 ‘git remote add origin [아까만든 git URL, 여기서는 hello_git + .git]’

url을 잘 모를 때는 인터넷 git hub의 hello_git의 명령어 참조 페이지를 참고 할 것

 

명령어가 정상 수행되면 디렉토리에 .git이 생성되었으며 다양한 관련 파일이 생성된 걸 볼 수 있음

 

4. Pull과 Push

  • push : 로컬 Git Repository의 데이터를 연결된 GitHub로 집어 넣는 작업
    • git status  로컬데이터와 git레파지토리 싱크 체크
    • git add .  로컬데이터와 git레파지토리 틀린점을 트래킹해서 싱크
    • git commit –m “message”  커밋시 커밋의 이유(메시지)를 다는 명령어
    • git push origin +master 
  • pull : 리모트 Git Repository에서 데이터를 가져오는 작업
    • 일반적으로 Push전에 Pull을 진행, 이는 실수로 Remote의 GitHub를 Overwrite 하지 않도록 하기 위함

5. Push Test

  • 앞서 만들었던 레파지토리(Ex: C:\java-msa\git-repository)로 이동해 임의의 텍스트 파일 하나를 만들도록 한다.
  • 여기서는 “Hello Git Test.txt”라는 파일을 만들고 내용으로는 “This is hello git test message”라고 입력해 두도록 합니다.
  • 탐색기로 생성된 git 레파지토리로 옮겨 git-bash를 시작하도록 합니다.

  • git status 명령어 수행를 통해 로컬 레파지토리와 github 레파지토리를 비교

  • git add . 명령어를 통해 github에 파일 트래킹, 여기서 "."은 모든 파일을 의미 합니다.
  • git commit –m “My first git file“ , 여기서 따옴표 안에는 커밋을 위한 메시지를 입력하도록 합니다.

  • 여기서 위와 같이 에러가 나온다면 로컬 git에 대한 환경 설정이 안되어 있다는 메시지 입니다.

 

  • 환경 설정 명령어(콘솔 메시지 참조)를 통해 git에 가입한 email addr과 사용자 명을 입력하도록 합니다.

 

  • 모두 끝났으면 위와 같이 다시 한번 git commit –m “message”를 입력하도록 합니다.
  • 여기서는 My First git file이라는 메시지를 입력 했습니다.

  • git push origin master 입력
  • 실제 데이터 push를 위해 git push origin master 명령어를 입력 하도록 합니다.
  • 이때 사용자 이메일과 git hub에 가입된 패스워드를 입력해야 합니다.
  • 앞서 설명했듯이 public github라 하더라도 데이터 입력을 위해서는 허가된 사용자만 가능합니다.
  • github 홈페이지에서 업로드 파일 확인

 

4)Pull Test

  • Pull 즉, remote github에 등록되어 있는 최신의 파일을 local이 레파지토리로 복사하는 작업
  • 테스트를 위해 원격 github의 실습용 레파지토리인 hello_git에 가지고 있는 소스 파일(하위 디렉토리를 가지고 있어도 상관없다.)을 올려 둡니다.

  • github는 drag&drop을 지원하기 때문에 업로드를 원하는 파일을 선택 한 후 아래의 그림에 있는 Drag files here to add them to your repository에 파일(혹은 디렉토리)을 끌어다 놓도록 합니다.

 

  •  정상적으로 파일 업로드가 완료되면 아래의 그림과 같이 업로든 파일의 리스트가 보인다.

  • 이제 로컬의 git repository상에서 git pull origin master 명령어를 통해 remote github에 있는 데이터를 가져옵니다.

  • 가져온 파일들을 확인 해 볼 수 있습니다.

 

5) github.com에 들어가 변경된 파일을 확인해 봅니다.

 

끝 ~

반응형