본문 바로가기

Git

Git/ Github

19.11.18. - Git/ Github

데이터베이스 구현

2019-11-18 20:55:49


데이터베이스 구현

 *okky.co.kr : 개발자 커뮤니티

 

Git/ Github

-형상관리를 위함.

-usb 혹은 이메일이 아닌 네트워크로 정보를 관리할 수 있다.

-흐름 (svc -> svn -> git)

-공개된 오픈소스 / 개인 소스를 사용. 관리.

-특징: 토발즈 리누스가 리눅스 소스관리를 위해 만듦. 무료, 빠름, 분산 버전 관리 시스템,

         네트워크 단절상태에도 개인 저장소에 commit 가능. 

-대다수의 개발자/비개발자 모두 git 사용중.

 

●비교

-중앙집중형 SCM(CVC, SVN)

작업 영역(pc)과 저장소의 동기화 작업이 네트워크를 통해 이루어진다.

-분산 SCM(Git)

작업 영역(pc)과 저장소가 같은 local 에 위치해 네트워크 없이 commit 이 가능하다.

commit은 로컬에서의 작업이며, 리모트 서버에 반영을 위해서는 push 작업이 별도로 필요하다.(네트워크 사용)

다운로드

https://git-scm.com/download/win

 

윈도우에서 "Git Bash" 를 열어보자.

 

 

CLI : Command Line Interface. 명령 줄 인터페이스, 명령어 인터페이스.

텍스트 터미널을 통해 사용자와 컴퓨터가 상호작용하는 방식을 뜻함.

즉, 작업 명령은 사용자가 컴퓨터 키보드 등을 통해 문자열의 형태로 입력하며,

컴퓨터로부터의 출력 역시 문자열의 형태로 주어진다.

GUI :  Graphic User Interface. 

CMD :  CLI를 제공하는 프로그램.

 

cli 명령어

▶설치 확인 : git -- version

▶설정(email, name)

$ git config --global user.name "KangHJ"

$ git config --global user.email "patiss12r@naver.com"

▶설정(email, name)의 확인

$ git config -l   /  $ git config --list (롱 옵션, 숏 옵션 둘 다 된다.)

$ pwd : 현재 있는 위치.

$ cd .. : 한 단계 상위 폴더로 올라간다.(예시에서는 Users 로.)

$ cd ~/ $ cd : 사용자 홈 디렉토리로 이동. (윈도우 C:\users\계정명)

: 처음 patis 였다가, cd .. 명령어로 Users 로 이동. cd ~ 로 다시 patis 로 이동했다.

 

 

$ cd 경로 이름 : 경로로 디렉토리를 이동한다.

 (cd = change directory)

$ ls : 현재 위치한 디렉토리의 하위 디렉토리 혹은 파일 정보를 조회. (window : dir)

▶탭키 : 자동완성

▶탭키 2번 : 리스트가 나온다.

$ mkdir 폴더 이름 : 폴더 이름의 새폴더를 만든다.

$ clear : 깨끗

git 뒤에 -- 가 오는 명령어 : 롱 옵션

            -  가 오는 명령어 :  숏 옵션

방향키 위쪽 : 이전에 쓴 코드 불러오기.

 

▶초기화 : git init

위치한 곳을 작업 환경으로 만들 것이다.

현재 디렉터리를 워킹 디렉터리로 지정하고, git 의 로컬 저장소를 생성.

gitTest 라는 폴더 속에서 git init 명령을 하니, 숨겨진 폴더로 git 가 생겨났다.

시스템에 의해 통제되는 저장소로 함부로 만지면 안 되나 봄.

이후 git bash 의 명령어에 master 라는 글자가 붙는다.

 

$ ls -a : 현재 폴더의 모든 것을 하나도 빠짐없이 보이라는 것.

($ ls --help 를 하면 명령어의 뜻을 알려준다.

-a 는 하나도 빠짐없이 모오두 라는 뜻.)

 

숨겨진 폴더도 볼 수 있다.

 

맨 앞 . 은 나 자신, 두 번째.. 은 상위 폴더, 뒤에 .git 폴더가 생긴 것을 볼 수 있다.

하지만 실제로 들어가 보면 저 폴더 없음!

 

$ git status : 작업 공간의 상태를 말해준다.

 

현재 마스터 브렌치에 있고, commit 이 없고, commit 할 것도 없다.

 

$ git add 파일 이름.sql : 

워킹 디렉터리의 변경 내용을 스테이징 에어리어에 반영. commit 할 준비를 하는 것.

git에서는 commit을 하기 위해서는 워킹 에어리어-> 스테이징 에어리어로 올려놔야 한다.

이때 add 가 필요하다.

 

$ git add *.sql : 

한 번에 여러 파일을 commit 할 수 있는 상태로 만든다.

 

▶$ git commit -m "커밋 메시지" :

스테이징 에어리어에 반영된 변경사항을 로컬 저장소에 commit(반영)

 

▶ github 계정을 만들고, 저장소를 생성하자.

https://github.com/계정명/저장소이름

https://github.com/HyonDi/gitTest 

 

$ git remote add origin url :

로컬 저장소를 원격 저장소와 연결하는 작업.

origin 이라는 별칭으로 url을 저장한다.

 

▶$ git remote -v :

현재 로컬 저장소에 설정된 원격 저장소의 주소를 확인해준다.

 

▶$ git remote rm 원격 저장소 별칭 :

등록된 원격 저장소를 삭제.

 

▶$ git push -u origin master :

현재 작업 중인 로컬 저장소의 브랜치(master) 와 origin(원격 저장소)의 master브랜치와 연결.

(최초 1회 작업한다.)

 

$ git push :

로컬 저장소에 커밋된 내역을 원격 저장소에 반영.

 

$ git clone url directory :

url이 가리키는 원격 저장소를 directory를 생성 후 복사한다.

($git clone https://github.com/jinwoolee/gitTest home)

 

▶$ git pull :

원격 저장소의 내용을 로컬 저장소로 반영.

 

$ notepad testfile.sql :

testfile 이라는 메모장을 열어라! 는 뜻인데, 찾다 없으면 새로 만들래? 물어봐준다. 

 

$ git rm : 제거

$ git push -u origin master ?

-u 는 최초 한 번만 쓰면 된다.

 

푸시할 때마다 비밀번호 치는 것을 간소화해보자!
▶$ git config credential.helper store

 

 

 

Github 이용

1.

▶설정(email, name)

$ git config --global user.name "KangHJ"

$ git config --global user.email "patiss12r@naver.com"

 

2.

▶$git init

현재 위치한 디렉터리를 워킹 디렉터리로 초기화함.

(=git local 저장소를 생성한다.)

 

3. 

$ git add 파일 이름. sql 

워킹 에어리어의 변경사항을 스테이징 에어리어에 반영.

 

4.

▶$ git commit -m "커밋 메시지" 

스테이징 에어리어에 반영된 사항을 로컬 레파지토리에 반영

 

5.

$ git remote add origin url

현재 작업 중인 로컬 레파지토리를 원격 사이트에 연결.

 

6.

▶$ git push -u origin master 

로컬 레파지토리의 내용을 원격 저장소의 master 브랜치로 전송.

(이후에는 $ git push 만 하면 된다.)

-------------------------------------------------------------------------------------

7.

$ git colone url directory_name

깃헙에 올라와있는 url내용(원격저장소 속 내용) 을 복사해서 내가 위치해있는 곳에

directory_name 이란 이름의 폴더를 만든 후 그 속에 집어넣어라.

 

8.

▶$ git pull 

원격 저장소에 반영된 내영을 로컬 레파지토리에 반영.

'Git' 카테고리의 다른 글

Git/GitHub Flow 브랜치 전략  (1) 2023.09.15
Git - branch merge 방법  (1) 2023.09.14
Git / GitHub (정의, 시작하기)  (0) 2023.09.13
크라켄, 이클립스 관련  (0) 2023.03.13