2010 07-29-version control use git

17
Version Control use Git Version Control use Git Name Name : : Kang-min Wang ( Aminzai ) Kang-min Wang ( Aminzai ) Date Date : : 2010/07/29 2010/07/29 Email Email : : aminzai –at-- aminzai.net aminzai –at-- aminzai.net

Upload: kang-min-wang

Post on 03-Sep-2014

1.103 views

Category:

Education


10 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 2010 07-29-version control use git

Version Control use GitVersion Control use Git

NameName :: Kang-min Wang ( Aminzai )Kang-min Wang ( Aminzai )DateDate :: 2010/07/292010/07/29EmailEmail :: aminzai –at-- aminzai.netaminzai –at-- aminzai.net

Page 2: 2010 07-29-version control use git

OutlineOutline

1)前情提要

2)History

3)軟體需求

4)基本功能簡介

5)Demo

6)注意事項

7)相關資源

8)Reference

Page 3: 2010 07-29-version control use git

前情提要前情提要

● 為何要用 VCS?● VCS 可以做到什麼 ?● 版本控制類型

Page 4: 2010 07-29-version control use git

●為何要用為何要用 VCS?VCS?

● 降低在共同撰寫程式的而外 Loading● 保障自己不要腦殘 ( 誤刪東西 )● 拯救改錯的程式● Extra: 系統備份 ( 誤 )

Page 5: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

5

●VCSVCS 可以做到什麼可以做到什麼 ??

● 紀錄版本變化● 可多人同時撰寫● 文件整合有問題,還會有整合工具

● (EX :不小心寫到同一行程式的時候 )

● 可以回復版本● 可以進行版本分支 / 合併

Page 6: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

6

中央式版本控制中央式版本控制

User1

RepoUser6

User5

User2

User3

User4

Page 7: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

7

中央式版本控制中央式版本控制

● 優點● 只有一個來源● 架構簡單清楚

● 缺點● 當無法連線到來源,則沒辦法進行版本控制,直到連

上來源為止。

● 常見工具● CVS,SVN,SVK,VSS

Page 8: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

8

分散式版本控制分散式版本控制

User1+Repo

RepoUser6+Repo

User5+Repo

User2+Repo

User3+Repo

User4+Repo

Page 9: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

9

分散式版本控制分散式版本控制

● 優點● 就算沒有遠端來源,也可以自己建立版本控制。● 可以直接將本端的版本推向任何端的來源。

– 就算是自己電腦的其他資料夾也行

● 缺點● 架構較複雜,但也較靈活。

● 常用工具● GIT,Mercurial

Page 10: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

10

HistoryHistory

● CVS● SVN ● GIT

Page 11: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

11

●軟體需求軟體需求

● Windows● msysGit

– http://git-scm.com/● TortoiseGit

– http://code.google.com/p/tortoisegit/

● Linux ( Ubuntu or Debian)● sudo apt-get install git-core gitk

Page 12: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

12

●基本功能簡介基本功能簡介

● init● add● commit● rm/mv/cp● clone● log● push/pull● diff● branch

● checkout● merge● tag● ....etc

Page 13: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System 13

DemoDemo

Page 14: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

14

線上資源線上資源

● GitHub● https://github.com/

● Unfuddle● http://unfuddle.com/

● Gitorious● http://gitorious.org/

● Codebase● http://www.codebasehq.com/

● Codaset● http://codaset.com/

Page 15: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

15

ExtraExtra

● Build central server base on Windows XP● http://code.google.com/p/tortoisegit/wiki/HOWTO_CentralServerWindowsXP

● Git The Basics Tutorial ● http://excess.org/article/2008/07/ogre-git-tutorial/

● An Illustrated Guide to Git on Windows● http://nathanj.github.com/gitguide/

● Git 原始碼管理● http://www.qweruiop.org/nchcrails/posts/49

● 使用 Git 與 Github 管理軟體開發專案● http://billy3321.blogspot.com/2009/02/github-howto.html

Page 16: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

16

Extra's ExtraExtra's Extra

9789866348341 9789866348471

Page 17: 2010 07-29-version control use git

2010/07/19 Introduction - Version Control System

17

Next TopicNext Topic

Python