* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubJunyoung Lee
OSS 포럼 개발자 교육 'Git/GitHub 입문하기 - 부산'에서 Git 실습에서 사용한 자료입니다. (http://onoffmix.com/event/69536)
지난 번 자료(http://www.slideshare.net/ssusercef361/git-github-62006866)는 구름 IDE를 활용해서 진행했고, 이번 자료는 Git 클라이언트를 설치해서 진행했습니다. GitHub 가입과 Git 클라이언트 설치는 강의 전 준비(http://www.slideshare.net/ssusercef361/github-git)를 참고해주세요.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
특정 폰트가 SlideShare.net에서 보이지 않는 관계로 모두 나눔고딕으로 통일했습니다.
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubJunyoung Lee
OSS 포럼 개발자 교육 'Git/GitHub 입문하기 - 부산'에서 Git 실습에서 사용한 자료입니다. (http://onoffmix.com/event/69536)
지난 번 자료(http://www.slideshare.net/ssusercef361/git-github-62006866)는 구름 IDE를 활용해서 진행했고, 이번 자료는 Git 클라이언트를 설치해서 진행했습니다. GitHub 가입과 Git 클라이언트 설치는 강의 전 준비(http://www.slideshare.net/ssusercef361/github-git)를 참고해주세요.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
특정 폰트가 SlideShare.net에서 보이지 않는 관계로 모두 나눔고딕으로 통일했습니다.
Source Tree로 버전 관리하는 법
- Git이 필요한 이유
- Stage(=Index에 기록)하기
- Commit하기
- Remote 추가하기
- Origin Remote로 GitHub 사용
- Push하기
- Clone하기
- Reset (Soft, Hard, Mixed)
- Revert
- Checkout, Detached HEAD
- 이전 Commit 수정하기
- Pull / Fetch&Merge하기
- Branch 만들기
- Fast Forward Merge하기
- 3-Way Merge하기
- 3-Way Merge에서 발생할 수 있는 Conflict 해결하기
- Visual Studio로 Conflict 해결하는 법
- Stash로 다양한 문제 해결해보기
- 오래된 저장소에서 Pull하기
- 다른 브랜치로 Commit 옮기기
- .gitignore 파일 설정하기
[17.02.09] Github introduction (Korean Version)Ildoo Kim
Git 혹은 소스코드 형상관리를 아예 모르는 사람을 대상으로 작성한 Starter Guide입니다. 팀에 새로운 사람이 Join하는 등의 경우에 세미나 자료로 활용합니다.
형상관리/git 개념과 command line 혹은 source tree를 활용한 기본적인 사용 방법에 대해 소개합니다.
<팀을>이라는 책을 많이 참고하였습니다.
2018년 서울시 앱 공모전 (URL: https://mplatform.seoul.go.kr )에서 GitHub 설명을 위한 자료입니다. 이전 https://www.slideshare.net/ianychoi/git-github-46020592 자료에 모바일 앱 개발 환경 및 GitHub Desktop 프로그램에 대한 부분을 추가하였습니다.
GitHub로 프로젝트 운영하기
-시스템소프트웨어 연구실 이건희
목차
-깃허브란?
-Repository 활용하기
-branches, releases
-깃허브 프로젝트 문서화
깃허브란?
• 깃(Git)을 사용하는 프로젝트를 지원하는 웹호스팅 서비스
• 다른 사람들과의 협업을 매우 용이하게 해줌
Repository 활용하기
Issue , Pull requests
• Issue 카테고리는 왜 사용하는가요?
• 버그를 기록하거나 요구사항을 전달할려고 사용
• Pull requests 카테고리는 왜 사용하는가요?
• 현재 진행중인 작업이 무엇인지 알게해줌. • 수정사항을 Merge 시킬 때 사용.
Pull requests로 넣은 수정사항이 Merge됨에 따라 Contributor가 될 수 있습니다!
branches, releases
branches
• 테스트 해보거나 새로운 기능을 개발하기 위해 사용하는 독립적인 commit
• Master branch : 기본 branch이자, 최종적으로 마무리 되는 branch
깃허브 문서화
README
• 해당 프로젝트의 개요나 설명, 설치법에 대해서 설명
• ‘README.md’ 파일을 인식
README’s Labels
• Badge images • Custom badge
https://shields.io/
README’s Labels
• Travis CI
• Continuous Integration : 푸시할 때 자동화된 빌드 및 테스트가 실 행되고 소프트웨어 품질을 향상시키는 개발 방식
• https://travis-ci.org/
Issue & Pull requests Template
• Maintainer에게 좀 더 정확하 게 의견을 전달하기 위해 만듬
• Insights > Comminuty 에서 추가 가능
LICENSE
네이버 오픈소스 가이드 https://naver.github.io/OpenSourceGuide/book/
그 외의 Community profile
• Code of conduct
• Contributing guidelines
그 외에 프로젝트 관리에 도움되는 것
OpenHub 어플리케이션
Git Bash (Git bash 사용법 : http://gbsb.tistory.com/10)
GitHub Desktop
참고
• 네이버 오픈소스 가이드 https://naver.github.io/OpenSourceGuide/book/
• 실제로 사용한 프로젝트 https://github.com/kuj0210/IoT-Pet-Home-System
1. Git
분산 버전 관리 시스템
-강별-
bkang721@gmail.com
11년 8월 28일 일요일 1
2. Category
❖ CVS, SVN
❖ Git 방식이란?
❖ Git 설정하기
❖ Git 이용하여 개발하기
11년 8월 28일 일요일 2
3. CVS, SVN
CVS, SVN
CVS(Concurrent Versions System) ; 동시 관리 버전 시스템
저장소의 파일들의 이름을 바꿀 수 없다.
SVN(Subversion) ; 자유 소프트웨어 버전 관리 시스템
네트웍 연결이 되지 않으면 자유로운 버전관리가 불가능하다.
11년 8월 28일 일요일 3
4. Git 방식이란?
❖ 저장소(repository)란?
❖ 어떻게 저장 대상을 결정하는가?
❖ 작업 트리(working tree)란?
❖ 어떻게 파일을 조작하고 동기화 하는가?
❖ 어떻게 프로젝트, 디렉토리 그리고 그 안에 포함된 파일을
추적하는가?
❖ 어떻게 태그(tag)를 이용해 마일스톤(milestone)을 기록
하는가?
❖ 어떻게 브랜치(branch)를 이용해 분기 이력을 추적하는가?
❖ 합치기(merge)란 무엇인가?
❖ 어떻게 Git이 파일 잠금을 처리하는가?
11년 8월 28일 일요일 4
5. Git 방식이란?
Git 방식의 강점
❖ 분산 아키텍쳐
- 항상 인터넷에 연결돼있어야 하는 고통 없이 동작한다.
❖ 쉬운 브랜치 만들기와 합치기
- 브랜치를 생성하기가 쉽다.
- 비용이 적다.
- 속도가 빠르다.
- 브랜치를 여러번 나눈 경우라도 간단히 합칠 수 있다.
❖ 서브 버전과 통신
- 회사 내에 자신만이 Git으로 바꿀 준비가 된 유일한 사람이라
면, 모두가 서브버전을 계속 사용하고 있어도 무방하다.
11년 8월 28일 일요일 5
6. Git 방식이란?
저장소(repository)란?
버전 관리 시스템에서 사용자가 변경한 모든 내용을 추적하는 공간.
ex) 은행(Bank)
은행 계좌 ➜ 저장소(repository)
은행 거래 내역 ➜ 저장소 이력
돈 ➜ 소스 코드(source code)
입금 ➜ Commit
⦁ Git 방식 : 현금 자동 인출기가 붙어있는 자신 만의 금고(개인은행)
⦁ 중앙 집중식 시스템 : 팀 구성원 모두가 사용하나는 하나의 은행
11년 8월 28일 일요일 6
7. Git 방식이란?
저장 대상을 결정
프로젝트를 진행하는 데 필요한 전부.
ex) Source code, Makefile, Rakefile, Ant(build.xml) 등..
그 외 : 설정 파일 예제, 문서, 이미지 등..
⦁ Makefile : C/C++ / Rakefile : Ruby / Ant : Java build
11년 8월 28일 일요일 7
8. Git 방식이란?
작업 트리(working tree)란?
모든 변경은 작업트리에서 이루어 진다.
작업트리 ➜ 모든 프로젝트(소스코드, 빌드 파일, 단위 테스트)
= 작업 복사본(working copy)
맨 처음의 작업트리는,
❖ 자신의 프로젝트를 저장소에 초기화 하도록 요청
❖ 기존 저장소의 프로젝트를 복제(clone)
복제하기(clone)는 지역 저장소를 만든 후 기본 흐름인 마스터 브랜
치에서 복사본을 체크아웃(check out) 한다.
⦁ 체크아웃(check out) : 사용자의 작업트리를 저장소의 특정 시점과 일치하도록 변경하는 것
11년 8월 28일 일요일 8
9. Git 방식이란?
파일을 조작, 동기화
❖ 변경 사항을 커밋(commit)하고 저장소에 새로운 리비전을 추가,
무엇을 변경했는지 로그메시지를 저장
❖ 바뀐 내용을 다른 개발자가 이용하게 하기 위해서 변경 사항을 공유
➜ 푸싱(pushing) : 바뀐 내용을 다른 개발자와 공유
❖ 다른 팀 멤버의 변경 사항을 가져와 최신으로 갱신하여 동기화 완료
➜ 풀링(pulling) : 다른 멤버의 변경 사항을 나의 저장소와 동기화
변경 사항 가져 오기
▶ 원격 저장소에 있는 변경 사항의 복사본 생성 ⇔ 푸싱
▶ 가져온 변경 사항을 지역 이력과 합친다 ⇒ 풀링
11년 8월 28일 일요일 9
10. Git 방식이란?
프로젝트, 디렉토리 안 파일 추적
❖ 저장 대상을 구조화
❖ 파일을 내용 단위로 추적 ; 최하위계층
ex) models.py 내 부의 변수나 함수 등을 구성하는 각 문자와
줄을 추적, 이름, 파일 모드(file mode), 심볼릭 파일 여부와 같은
메타데이터(metadata)를 models.py 에 추가 한다.
➜ 저장소의 전체 이력을 저장하는 데 필요한 공간 줄어듬.
❖ 저장소의 구조는 프로젝트 마다 다르다 ; 프로젝트에 알맞게 구성 .
➜ 프로젝트 마다 새로운 디렉토리, or 새로운 저장소
11년 8월 28일 일요일 10
11. Git 방식이란?
태그(tag), 마일스톤(milestone) 추적
❖ 마일스톤(milestone) ; 일정 간격으로 세워져 있는 이정표.
프로젝트가 잘 진행되고 나아갈 수 있도록 중간 중간의 목표지점
및 체크포인트로서 설정을 해 놓은 것.
➜ 날짜와 목적하는 상태에 대한 서술, 세부 항목들의 체크 리
스트, 중간 점검을 위함.
❖ 태그(tag) ; 저장소 이력의 특정 시점을 기록.
저장소 이력의 특정 위치를 기록해두어 참조 한다.
쉬운 이름을 특정 리비전의 태그에 부여 ➜ 저장소의 이력을 추적
11년 8월 28일 일요일 11
12. Git 방식이란?
브랜치(branch), 분기 이력 추적
마스터 브랜치
ex) ❖ 브랜치를 생성 ➜ 파일이 분기하는 위치가
책 = 저장소, 저장소에 기록됨.
시리즈 = 브랜치 ❖ 다른 브랜치와 분리하여 변경 사항을 지속
적으로 추적, 분기 이력을 생성.
⦁ 마스터 브랜치(master branch) ; 트렁크(trunk) : 개발의 기본 줄기
11년 8월 28일 일요일 12
13. Git 방식이란?
브랜치(branch), 분기 이력 추적
promt > git branch [..] master
릴리즈 브랜치
브랜치 생성
마스터 브랜치
ex) ❖ 브랜치를 생성 ➜ 파일이 분기하는 위치가
책 = 저장소, 저장소에 기록됨.
시리즈 = 브랜치 ❖ 다른 브랜치와 분리하여 변경 사항을 지속
적으로 추적, 분기 이력을 생성.
⦁ 마스터 브랜치(master branch) ; 트렁크(trunk) : 개발의 기본 줄기
11년 8월 28일 일요일 12
14. Git 방식이란?
브랜치(branch), 분기 이력 추적
promt > git branch [..] master
릴리즈 브랜치
브랜치 생성
마스터 브랜치
기타 브랜치
ex) milestone...
ex) ❖ 브랜치를 생성 ➜ 파일이 분기하는 위치가
책 = 저장소, 저장소에 기록됨.
시리즈 = 브랜치 ❖ 다른 브랜치와 분리하여 변경 사항을 지속
적으로 추적, 분기 이력을 생성.
⦁ 마스터 브랜치(master branch) ; 트렁크(trunk) : 개발의 기본 줄기
11년 8월 28일 일요일 12
15. Git 방식이란?
합치기(merge)란?
합치기(merge) : 브랜치의 이력을 하나로 합친다.
❖ Git 방식 : 사용자가 직접 하는 방식과 동일.
❖ 파일의 서로 다른 영역이 변경 ➜ Git이 알아서 합친다.
합칠 수 없는 상황 ➜ 오류가 있음을 기록, 사용자에게 충돌 알림.
(서로 다른 개발자가 같은 위치를 다르게 수정)
❖ 합치기 추적 ; Git이 합치기 추적 제공.
함께 합쳐진 커밋 내용을 추적, 이미 합쳐진 내용은 다시 합치지 않
음.
➜ CVS 같은 버전 관리시스템에서는 제공 되지 않음.
11년 8월 28일 일요일 13
16. Git 방식이란?
Git의 파일 잠금 처리
ex) 도서관에서 책을 빌림 = 체크아웃(check out)
strict locking ➜ 내가 사용하는 한 다른 사람 사용 금지.
optimistic locking ➜ 다수의 개발자 동시에 접근 가능.
① A 와 B가 모두 저장소의 복사본 생성, 각자 변경.
② 같은 파일의 다른 부분을 편집.
③ A가 자신의 변경 사항을 고유 저장소에 푸싱.
④ B도 자신의 변경 사항을 푸싱.
⑤ Git은 B의 푸싱을 거절.
➜ Why?
11년 8월 28일 일요일 14
17. Git 방식이란?
Git의 파일 잠금 처리
ex) 도서관에서 책을 빌림 = 체크아웃(check out)
strict locking ➜ 내가 사용하는 한 다른 사람 사용 금지.
optimistic locking ➜ 다수의 개발자 동시에 접근 가능.
① A 와 B가 모두 저장소의 복사본 생성, 각자 변경.
② 같은 파일의 다른 부분을 편집.
③ A가 자신의 변경 사항을 고유 저장소에 푸싱.
④ B도 자신의 변경 사항을 푸싱.
⑤ Git은 B의 푸싱을 거절.
➜ 복사본을 만든 후 파일이 변경됐으므로, B는 저장소에서 파일의 변경사항을 풀
링한 후, 충돌된 영역이 있다면 이를 처리 후 다시 서버로 변경사항을 푸싱 해야함.
11년 8월 28일 일요일 14
18. Git 설정하기
❖ Git 설치하기
❖ Git 구성하기
❖ Git 도움말 이용
11년 8월 28일 일요일 15
19. Git 설정하기
Git 설치하기
Linux :
$ sudo apt-get build-dep git-core git-doc
➜ git-core와 git-doc 패키지가 의존하는 모든 패키지 설치.
$ make prefix=/usr/local all doc
➜ 전체 사용자가 사용할 수 있도록 Git을 설치.
$ sudo make install install-doc
➜ 설치
Mac OS X:
$ sudo port install git-core +svn +doc
➜ Git과 git-svn을 설치
11년 8월 28일 일요일 16
20. Git 설정하기
Git 설치하기
Window : Cygwin, msysGit 등..
11년 8월 28일 일요일 17
26. Git 이용하여 개발하기
새 저장소 만들기
$ mkdir Project
$ cd Project
$ git init
❖ 초기에 사용할 어떤 내용물이 있다면,
$ tar xzvf MyProject.tar.gz
$ cd MyProject
$ git init
$ git add .
$ git commit
11년 8월 28일 일요일 23
27. Git 이용하여 개발하기
커밋 만들기
① 편집기를 이용하여 작업 디렉토리 상에 변경 사항을 만든다.
② git에게 변경 사항을 알려준다.
③ 위 단계에서 git에게 알려준 내용을 이용하여 커밋을 만든다.
$ git commit -m “message” -a # 가장 최신 버전 커밋
$ git commit -m “message” hello.c # 지정 파일만 커밋
11년 8월 28일 일요일 24
28. Git 이용하여 개발하기
차이점 살펴보기
$ git diff # 스테이징 되지않고 커밋되지도 않은 변경 사항 표시.
$ git diff --cached # 스테이징되지않은 변경 사항 표시 안함.
$ git diff HEAD # 작업트리, 스테이징된 변경 사항, 저장소의 모든
차이점을 비교함.
11년 8월 28일 일요일 25
29. Git 이용하여 개발하기
변경 사항 추적하기(1)
$ git status
11년 8월 28일 일요일 26
30. Git 이용하여 개발하기
변경 사항 추적하기(2)
$ git log
$ git log -1
11년 8월 28일 일요일 27
31. Git 이용하여 개발하기
브랜치 만들고 사용하기
$ git branch # 이 저장소 내의 모든 로컬 브랜치
$ git branch RB_1.0 master # 생성하려 것, 분기해 나올 것.
$ git checkout RB_1.0 # 브랜치를 RB_1.0으로 변경.
❖ 마스터 브랜치를 변경 했다면, 릴리즈 브랜치에는 없는 내용이다.
11년 8월 28일 일요일 28
32. Git 이용하여 개발하기
브랜치 합치기
$ git merge RB_1.0 # RB_1.0 브랜치의 변경 사항이 master 브
랜치에 합쳐진다.
$ git merge --squash hello.c # 모든 커밋을 하나의 커밋으로
밀어넣는다.
11년 8월 28일 일요일 29
33. Git 이용하여 개발하기
릴리즈 다루기
$ git tag 1.0 RB_1.0
$ git tag
1.0
hello.c 변수 추가
릴리즈 브랜치
hello.c 추가 hello.c 1차 수정 hello.c 1차 수정
마스터 브랜치
11년 8월 28일 일요일 30
34. Git 이용하여 개발하기
릴리즈 다루기
$ git checkout master
$ git rebase RB_1.0
$ git branch -d RB_1.0
$ git branch RB_1.0.1 1.0 hello.c 변수 추가
$ git checkout RB_1.0.1
릴리즈 브랜치
hello.c 추가 hello.c 1차 수정 hello.c 1차 수정
마스터 브랜치
11년 8월 28일 일요일 31
35. Git 이용하여 개발하기
릴리즈 다루기
$ git checkout master
$ git rebase RB_1.0
$ git branch -d RB_1.0
$ git branch RB_1.0.1 1.0
$ git checkout RB_1.0.1
hello.c 추가 hello.c 1차 수정 hello.c 변수 추가 hello.c 1차 수정
1.0
11년 8월 28일 일요일 31
36. Git 이용하여 개발하기
릴리즈 다루기
$ git archive --format=tar
--prefix=Project-1.0/ 1.0
| gzip > Project-1.0.tar.gz
# --format ; Git이 생성할 출력 파일의 형식
# --prefix ; 1.0 의 모든 내용을 Project-1.0/ 디렉토리 아래 포함.
# | gzip > ; git archive에 의한 tar파일을 파이프라인으로 연결하여,
gzip으로 압축.
$ git archive --format=zip
--prefix=mysite-1.0/ 1.0
| gzip > mysite-1.0.zip
11년 8월 28일 일요일 32
37. Git 이용하여 개발하기
원격 저장소 복제하기
$ git clone git://git.kernel.org/pub/scm/git/git.git
# git 프로그램
❖ 생성된 디렉토리에는,
프로젝트 파일의 복사본들(= 작업트리)과 프로젝트의 변경 이력에
대한 모든 정보를 포함하고있는 “.git”라는 최상위 디렉토리가 존재.
11년 8월 28일 일요일 33
38. Git 이용하여 개발하기
변경 사항 푸싱하기
❖ 프로젝트 구성원과 변경사항을 공유하도록 상위 저장소에 변경 사
항을 푸싱한다.
$ git push
$ git push --dry-run # 푸싱된 변경 사항 확인.
❖ 아무 매개변수 지정하지 않으면, origin 저장소에 동일한 이름의
브랜치로 동기화.
11년 8월 28일 일요일 34
39. Git 이용하여 개발하기
새로운 원격 저장소 추가하기
❖ 쉽게 말하면 내 저장소에 다른 저장소를 동기화.
❖ 기본 원격 저장소는 origin 이라고 명명하며, 복제한 저장소의 전
체 이름에 대한 별칭이다.
$ git pull git://ourcompany.com/dev-erin.git
$ git remote add erin git://ourcompany.com/dev-erin.git
$ git pull erin HEAD
⦁ 읽기나 쓰기 권한이 있다면 어떠한 저장소에서도 푸싱하거나 풀링 할 수 있다.
11년 8월 28일 일요일 35
40. 로컬 컴퓨터에서 생성된 Git 이용하여 개발하기
프로젝트를 원격 저장소에 추가
$ git remote add origin git@example.com:/repos/pocus.git
$ git push origin master
❖ 변경 사항을 푸싱하려는 저장소가 기본 저장소라면 원격 저장소를
origin으로 별칭을 지정한다.
⦁ 읽기나 쓰기 권한이 있다면 어떠한 저장소에서도 푸싱하거나 풀링 할 수 있다.
11년 8월 28일 일요일 36
41. The most commonly used git commands are:
add Add file contents to the index
bisect Find by binary search the change that introduced a bug
branch List, create, or delete branches
checkout Checkout a branch or paths to the working tree
clone Clone a repository into a new directory
commit Record changes to the repository
diff Show changes between commits, commit and working tree, etc
fetch Download objects and refs from another repository
grep Print lines matching a pattern
init Create an empty git repository or reinitialize an existing one
log Show commit logs
merge Join two or more development histories together
mv Move or rename a file, a directory, or a symlink
pull Fetch from and merge with another repository or a local branch
push Update remote refs along with associated objects
rebase Forward-port local commits to the updated upstream head
reset Reset current HEAD to the specified state
rm Remove files from the working tree and from the index
show Show various types of objects
status Show the working tree status
tag Create, list, delete or verify a tag object signed with GPG
11년 8월 28일 일요일 37