Git haecheon100@gmail.com.

Slides:



Advertisements
Similar presentations
일정 관리 다이어리 제작 JSP Programming with a Workbook. 학습 목표  사용자의 일정을 관리할 수 있는 다이어리에 대하여 알아보자. JSP Programming with a Workbook2.
Advertisements

프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
HTTPS Packet Capture Tutorial
재료수치해석 HW # 박재혁.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
코크파트너 설치 가이드 Window 7.
Cross Compiler를이용한 커널 컴파일 및 포팅
연결리스트(linked list).
Git Jara.
CUDA Setting : Install & Compile
Linux/UNIX Programming
Hostname 변경 및 Service open
네트워크 프로그래밍 및 실습.
1 최초 한번만 실행 Git 초기화 git init git config user.name “StudentNum”
9. Deploying mean applications
ANSYS17.2 Student 제품 무료 다운로드
Windows 8 Ksystem G&I 설치.
임베디드 시스템 개론 크로스 플랫폼 설치 2일차 강의 자료 Embedded System Lab.
Homework #6 (1/3) 다음을 수행한 후, 화면(혹은 파일)을 출력하여 제출한다.
remote add origin <GitHub url>
Root Filesystem Porting
Communication and Information Systems Lab. 황재철
1. C++ 시작하기.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
제 2 장 WML 시뮬레이터 및 무선인터넷 서버 설치
Root Filesystem Porting
HW #4 파일과 디렉토리 1. 자신의 HOME 디렉토리 아래에 다음과 같은 구조의 디렉토리 및 파일을 생성하고, 이 구조를 다음 명령을 사용하여 파일로 저장한 후, 이를 프린트하여 제출한다. $ ls –lR linux_unix > hw4-1 $HOME linux_unix.
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
Cross Compiler 설치.
Git 사용법 GitHub 가입 GitHub 새 저장소 만들기 Git 설치 로컬 저장소 만들기 로컬 저장소와 원격 저장소 연결
Cross Compiler를이용한 커널 컴파일 및 포팅
시스템 인터페이스 Lab3 Unix 사용법 실습.
7가지 방법 PowerPoint에서 공동 작업하는 다른 사용자와 함께 편집 작업 중인 사용자 보기
㈜시스원이 제공하는 시스템 관리 통합 솔루션 SysmanagerOne Agent설치 안내서
Homework #6 (1/3) 다음을 수행한 후, 화면(혹은 파일)을 출력하여 제출한다.
SSH, VNC Mobile Engineering, Kyungwoon Univ. Embedded System Design.
cafe.naver.com/embeddedcrazyboys
HW #4 UNIX 파일과 디렉토리 1. 자신의 HOME 디렉토리 아래에 다음과 같은 구조의 디렉토리 및 파일을 생성하고, 이 구조를 다음 명령을 사용하여 파일로 저장한 후, 이를 프린트하여 제출한다. $ ls –lR linux_unix > hw4-1 $HOME linux_unix.
Homework #6 (1/3) 다음을 수행한 후, 화면(혹은 파일)을 출력하여 제출한다.
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
Day-27(Tue_10.16) 파일 서비스 설정 AD 가 설치된 환경에서 DHCP 설치 할 경우 권한 자격을 주어야함.
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
ARM Development Suite v1.2
Git 사용하기 Git 소개 Git 사용 환경 GitHub 가입 및 원격 저장소 만들기 Git 설치 Git 최초 설정
리눅스 커널 프로그래밍 환경 구축 IT EXPERT 리눅스 커널 프로그래밍 Author : Byungki Kim
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
빌드 성공.
S-Work 2.0 DRM 신규 버전 설치 가이드 SOFTCAMP
Teaming pms.
Kernel, Ramdisk, JFFS2 Porting
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
STS 에서 웹 서버 설치 방법.
OpenCV 설정 2.21 만든이 딩딩.
수동 설치시는 설치 방법 1. 두번에 설치 CD 속에 fscommand 폴더 밑에 Osstem 이라는 폴더를
Linux 9.X 기초에서 활용까지 Chapter 06 VI 편집기.
 파일 아카이브와 압축 명령 익히기.
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
Homework #3 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
1. 인터넷 보안 옵션 레지스트리 등록 Config Setup 클릭.
동적메모리와 연결 리스트 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
Git을 이용한 버전 관리 - Branch 실습
숙제 작성 및 제출 과정 김진하 2008/03/14.
구글 계정 생성가이드.
01. 로컬 사용자 계정 기본 사용자 계정은 Windows 2000, Windows XP, Windows Server 2003을 설치할 때 자동으로 생성 [시작] → [제어판] → [관리 도구]를 선택하고 [컴퓨터 관리] 창을 열어 ‘시스템 도구’ → ’로컬 사용자 및.
Docker Study 6~7.
Presentation transcript:

git haecheon100@gmail.com

목 차 1. git 이해, 설치 및 기초 2. 원격 저장소와 기존 directory

Git의 이해 분산 버전 관리 시스템 소스코드를 저장하는 저장소 여러 사람이 프로젝트를 진행할 시 소스코드에 관리를 도와줌 언제 어디서 변경 되었는지 확인 변경 사항에 대한 기록 남김

Git 설치 - linux CentOS $yum install git Fedora $yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel $ yum install git-core Ubuntu $ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev $apt-get install git

Git 설치 - window Download http://git-scm.com/

Git 설치 - window

Git 설치 - window

Git 설치 - window

Git 설치 - window

Git 설치 - window

Git 설치 - window

Git 환경설정 Git을 설치하고 나면 Git의 사용 환경을 적절히 설정해 주어야 한다. 한 번만 설정하면 된다. 설정한 내용은 Git을 업그레이드해도 유지된다. 또한, 명령어로 언제든지 다시 바꿀 수 있다. Git은 ’git config’라는 도구로 설정 내용을 확인하고 변경할 수 있다. Git은 이 설정에 따라 동작한다. 이 설정 파일은 세 가지나 된다. 전역 설정 : 시스템의 모든 사용자와 모든 저장소에 적용되는 설정이다. git config --system 옵션으로 이 파일을 읽고 쓸 수 있다. Linux : /etc/gitconfig 파일: 시스템의 모든 사용자와 모든 저장소에 적용되는 설정이다. git config --system 옵션으로 이 파일을 읽고 쓸 수 있다. Windows : C:\Program Files (x86)\Git\etc\gitconfig 특정 사용자 : 특정 사용자에게만 적용되는 설정이다. git config --global 옵션으로 이 파일을 읽고 쓸 수 있다. Linux : ~/.gitconfig 파일 Windows : $HOME Directory(C:\Documents and Settings\$USER)에 있는 .gitconfig 파일 특정 저장소에만 적용 .git/config: 이 파일은 git Directory에 있고 특정 저장소(혹은 현재 작업 중인 프로젝트)에만 적용된다. 각 설정은 역순으로 우선시 된다. 그래서 .git/config가 /etc/gitconfig보다 우선한다.

Git 설정 Git은 분산 환경이므로 사용자의 구별이 필요함 Git의 출력 결과를 color로 표시하기 설정 확인하기

Unmodified/modified Files Git 기초 Unmodified/modified Files Staged Files Committed Files Git은 commit이라는 단계 전 까지는 수정, 삭제 등 변경사항을 알지 못함 Working directory(작업 디렉터리)에서 작업을 하고 이를 staging area라는 영역으로 add하게 된다. 여러 번의 add후에 만들어진 stage files을 commit하게 되면 git directory에 반영 된다.

Git 기초 Git 저장소를 만드는 방법은 두 가지이다. 기존 자신의 프로젝트를 git 저장소로 만드는 방법 다른 서버에 있는 저장소를 clone하는 방법 우리의 목표는 2번이지만 git을 익히기 위해 1번 방법 먼저 연습을 해보자 My pc 저장소 기존 디렉터리 .git Server 저장소 My pc 저장소 clone, pull, fetch Server에서 clone한 디렉터리 .git 저장소 .git push

Git 기초 기존 프로젝트를 Git으로 관리하고 싶을 때 관리할 디렉터리에서 git init명령어 실행 ls –al 명령어를 입력하면 .git이 만들어지고 이는 저장소의 meta데이터를 갖고 있다. Clone 후 git status 명령 입력하면 아직 하나도 수정하지 않았다는 것을 말해준다

Git 기초 임의의 파일 생성한 뒤 git status 파일 추적하기 Untracked file에 속해 있는데 untracked 상태라는 것을 말하고 git은 아직 스냅샷(커밋)에 넣어지지 않는 파일이라고 본다. Tracked 상태가 되기 전엔 git은 절대 commit하지 않는다. 파일 추적하기 Changes to be committed는 파일이 staged 상태라는 것을 의미. 커밋하게 되면 git add를 실행한 시점의 파일이 커밋되어 저장소 히스토리에 남는다.

Git 기초 Commit 하기 다시 파일을 수정 해보자 -m 옵션과 함께 ‘commit message’입력하게 되면 add해서 staging영역에 있던 file을 commit 영역으로 보내어 git 저장소에 저장되게 된다 Commit message를 남김으로써 README file을 만들었다는 일종의 표시를 하는 것이다 다시 파일을 수정 해보자 git diff 명령을 통해 working 디렉터리에 있는 것과 staging area에 있는 것을 비교하고 아직 stage하는 않은 것을 보여준다. 커밋영역과 staging area를 비교하려면 git diff –cached한다.

Git 기초 git log 사용하기 git status를 입력해보면 REAME가 수정되었지만 아직 commit되지는 않은 모습 Commit과 함께 입력했던 commit message가 출력된다 수정했던 내용은 아직 commit하지 않았기에 git은 이를 알 수 없음.

Git 기초 다시 commit하고 git log 해보기 Commit message가 최신 순으로 출력된다.

Git 기초 기타 명령어 파일 지우기 파일 이름 변경하기 git rm 명령으로 staging area에서 삭제하게 된다. 지운 뒤 commit해야 한다. 파일 이름 변경하기 mv 명령을 하고 git rm을 통해 바꾸기 전의 파일을 지우고 이름이 바뀐 파일을 add한 것과 같다.

Git 기초 Branch Commit을 3번 했을 때 아래와 같은 모습이고, branch란 commit 사이를 이동할 수 있는 일종의 포인터이다. 기본적으로 git은 master 브렌치를 만든다. $git add README test.rb LICENSE ( 3개의 파일 있다고 가정 ) 가장 마지막 커밋을 가리키고 있음 commit 개체

Git 기초 브랜치 하나 만들어 보자 $git branch testing 새로 만든 브랜치도 마지막 커밋을 가리킴 지금 작업 중인 브랜치를 가리키는 HEAD라는 포인터가 존재 브랜치를 새로 만들었지만 git은 아직 master 브랜치를 가리킴

Git 기초 작업 브랜치 변경 어떤 update 후에 commit 한번 더 해본다 $git checkout testing HEAD가 testing 브랜치를 가리킴 어떤 update 후에 commit 한번 더 해본다 $vim test.rb $git add test.rb $git commit –m ‘made a change’ master 브랜치는 그대로 있지만 testing 브랜치는 앞으로 이동한다

Git 기초 Master 브랜치로 되돌아가기 $git checkout master HEAD가 master로 이동 Working directory의 파일도 그 시점으로 되돌려 놓음 다시 새로 커밋을 하게되면 이전 작업들과 별개로 진행 됨 testing 브랜치에서 임시로 작업하고 원래 master 브랜치로 돌아와 하던 일을 할 수 있음

Git 기초 다시 파일을 수정하고 commit하면 두 작업이 서로 독립적으로 각 브랜치에 존재하는 모습을 확인할 수 있음 후에 필요에 따라 다시 merge하여 프로젝트를 하나로 합쳐 진행할 수도 있다

2. 원격 저장소와 기존 directory 진행 순서 사용자 등록 앞의 내용에서 진행 Server에서 로컬 저장소로 받아오기 Local에서 임의의 파일 원격 저장소에 push 연습하기 두 사람이 공통 git server사용 연습하기 기존 working directory를 추가 하기 기존 working directory 원격 저장소로 push하기 원격 저장소에 pushing한 기존 working directory pull하기

Server에서 저장소 받아오기 각자의 컴퓨터에서 git clone 명령을 통해 받아오기 확인하기 Ex) embedded 대신에 -> 자신의 Team name으로 입력한다. Password : 팀장 이름 Server ip : 보안상 메일을 통해 보냄 확인하기 .git 디렉터리를 생성하고 여기에 저장소 메타데이터를 모두 저장한다.

Local에서 원격 저장소에 push하기 git init하기 git clone을 통해 .git 디렉터리를 받아왔기에 git init명령이 필요 없다. Server에서 받은 디렉터리에 파일 추가 및 add, commit 파일 추가 git에게 알리는 두 단계 작업이 필요 서버에 push하기

Local에서 원격 저장소에 push하기 디렉터리 삭제 후 다시 clone 해보기 git remote 명령 Commit 했던 README가 적용되어 clone된 모습을 확인할 수 있음 git remote 명령 현재 프로젝트에 등록된 리모트 저장소를 확인 할 수 있다. ( defualt로 origin이라는 이름 ) -v 옵션을 주어 단축이름과 URL을 함께 볼 수 있다.

두 사용자가 공통git server이용 방금 전 내용까지 cheon이라는 이름의 사용자이었음 마찬가지로 user의 정보를 추가해줘야 함 ch_user라는 사용자가 같은 방법으로 git clone한다. ( $server는 기존 ip주소 ) 확인해보면 cheon 사용자가 서버에 push한 README파일을 가져온 모습

두 사람이 공통 git server사용 ch_user 사용자가 main.c를 만들고 이를 cheon 사용자가 내려받기 add하고 commit 하기

두 사람이 공통 git server사용 main.c를 추가한 것을 push 명령어로 서버의 저장소에 push할 수 있다 다시 cheon 사용자에서 이를 받아오기

두 사람이 공통 git server사용 확인 Cheon 사용자가 main.c file을 받아 온 모습 git log 명령어 – 내용을 살펴보면 ch_user_name, ch_user@example.com를 갖는 사용자가 Commit message : make main.c를 통해 main.c를 생성했음을 나타낸다.

기존 working directory를 추가하기 cheon 사용자가 기존 working directory를 갖고 있다고 가정 모든 파일을 원격 저장소에서 받아온 directory에 복사 어떤 파일은 git에 추가할 필요가 없을 수도 있다. vi .gitignore파일을 열어 무시할 파일 패턴을 적는다

기존 working directory 원격 저장소로 push하기 복사한 파일을 git add *.c를 통해 staging 영역으로 보내기 여러 번의 add가 있을 수 있고, 그 후 commit한다 다시 원격 저장소에 push한다

원격 저장소에 pushing한 기존 working directory pull하기 ch_user사용자에서 git pull를 통해 원격 저장소에서 새로 내려 받는다. cheon 사용자에서 올린 기존 파일들을 ch_user사용자가 내려 받은 모습

http://git-scm.com/