james-版本控制
DESCRIPTION
study4.tw五月份TRANSCRIPT
![Page 1: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/1.jpg)
版本控制系統James Fu
http://www.dotblogs.com.tw/JamesFu
![Page 2: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/2.jpg)
檔案被別⼈或⾃己覆蓋,甚⾄刪除想復原前幾天寫的版本想知道跟昨天寫的差在哪裡是誰改了這段程式碼,為什麼新功能做一半,但又有舊的問題要修改 …….
為什麼要使用版本控制 ?
![Page 3: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/3.jpg)
變更管理進度追蹤協同工作 …
版本控制的好處
![Page 4: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/4.jpg)
版本控制不是只有開發⼈員需要版本控制並非協同開發才需要版本控制需要專業的訓練版本控制需要付出高額的成本 ……
版本控制常見的誤解
![Page 5: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/5.jpg)
集中式管理
RepositoryWorkspace
Network
![Page 6: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/6.jpg)
悲觀鎖定◦ CVS、 Visual SourceSafe
樂觀鎖定◦ Subversion◦ Team Foundation Server
分散式管理◦ Git
工作模式
![Page 7: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/7.jpg)
集中式(鎖定)中央版本資料庫
Version 1
Version 2
電腦 A檔案
電腦 B檔案
lock and checkoutcommit
![Page 8: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/8.jpg)
集中式(合併)中央版本資料庫
Version 1
Version 2
電腦 A檔案
電腦 B檔案
checkoutcommit
![Page 9: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/9.jpg)
分散式中央版本資料庫
Version X
Version Y
電腦 A檔案
電腦 B檔案
版本資料庫Version
X
版本資料庫Version
X
![Page 10: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/10.jpg)
Check out Check in Update Add Delete
主要功能
![Page 11: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/11.jpg)
Trunk◦程式主要的共享開發版本
Tag◦程式的特別版本 ;◦常用於釋出版本,或需要特別標定時使用
Branch◦程式的分支版本◦常用於釋出版本的功能添加、臭蟲修正,或特別為某目的的開發版。
常用名詞
![Page 12: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/12.jpg)
• Cloud-powered source code management
• Team collaboration and agile planning
• Build, Test, Deploy!
![Page 13: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/13.jpg)
Team Foundation Server / Service
Project 2
IssuesProject Mgmt
Project 1
Git
3rd Party
XCode
Eclipse
Shell
…
3rd Party Eclipse
Shell
… TFVC
…
Local Repo
Git SCC ProviderTFS SCC Provider
Team Explorer
TFVC Object Model LibGit2 / LibGit2Sharp
Other Remote Git Repo
Git-TF
IssuesProject Mgmt
…
![Page 14: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/14.jpg)
![Page 15: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/15.jpg)
![Page 16: James-版本控制](https://reader036.vdocuments.site/reader036/viewer/2022062418/5560fecad8b42a91388b53d6/html5/thumbnails/16.jpg)
五餅二魚工作室