SlideShare a Scribd company logo
1 of 27
觀念與實作
目錄
 什麼是 Git ?
 本地環境設定
 基本操作
 設定 Gitlab 遠端儲存庫
 Gitlab 基本操作
 專案協作技巧與規範
 衝突解決與版本發佈
 其他
什麼是 Git ?
調整畫面 UI
修改資料格式
刪除遺留程式
開發新功能
調整畫面 UI
修改資料格式
刪除遺留程式
開發新功能
版本一
版本二
版本三
版本四
版本四
版本三
調整畫面 UI
修改資料格式
刪除遺留程式
開發新功能
反悔回到上一版
調整畫面 UI
修改資料格式
刪除遺留程式
開發新功能
取消修改
但是想保留怎麼辦?
傳統單線版本控制 Git 多分支版本控制
調整畫面 UI
刪除遺留程式
開發新功能
修改資料格式
調整畫面 UI
刪除遺留程式
開發新功能
修改資料格式
取消修改
反悔找回
調整畫面 UI
刪除遺留程式
開發新功能
修改資料格式
取消修改
反悔找回
調整畫面 UI
刪除遺留程式
開發新功能
修改資料格式
獨立版本
獨立版本
獨立版本
獨立版本
Git 多分支版本控制
 功能分割
 多人協作
 穩定開發
本地環境設定
視覺化版本控制工具
下載連結
將專案 git 連結至 Sourcetree
• Create:建立新 git 管理
• Add:連結已建立 git 的本地專案
• Clone:將遠端專案複製到本地
已有專案 ≠ 已有 git
本地 Git 操作流程
Add
加入修改的檔案
index.php
ui.html
…
Commit
提交變更到 git
Commit 提交訊息規範
Git Commit Message 替專案引入規範與範例
Branch
新建分支
Merge
合併分支
Branch 分支規範
工作流程分支
• Development (dev)
• QA/Test (test)
• Master (master)
Git Branch Naming Convention - DEV Community
暫時性分支
• Feature
• Bug Fix
• Hot Fix
• Experimental
• Build
• Release
• Merging
完整 Git 操作流程
遠端儲存庫管理工具
• 申請帳號
• 建立專案(新專案 / 連結本地專案)
Iterate faster, innovate together | GitLab
本地分支 遠端分支
在同一個 Commit 代表本地和遠端已經同步
origin/dev
dev
遠端有更新
origin/dev
dev
本地有更新
尚未同步
Push
將本地同步到遠端
Pull
將遠端同步到本地
origin/dev dev
origin/dev
dev
origin/dev
dev origin/dev
dev

More Related Content

What's hot

V sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてV sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてSatoshi Imai
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做Chen Cheng-Wei
 
Why Aren't You Using Git Flow?
Why Aren't You Using Git Flow?Why Aren't You Using Git Flow?
Why Aren't You Using Git Flow?John Congdon
 
ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414Kentaro Ebisawa
 
インターネットの仕組みとISPの構造
インターネットの仕組みとISPの構造インターネットの仕組みとISPの構造
インターネットの仕組みとISPの構造Taiji Tsuchiya
 
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)NGINX, Inc.
 
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみるいまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる裕士 常田
 
Scaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardScaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardJui An Huang (黃瑞安)
 
Git Introduction Tutorial
Git Introduction TutorialGit Introduction Tutorial
Git Introduction TutorialThomas Rausch
 
Git flow
Git flowGit flow
Git flowshaokun
 
Git Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowGit Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowMikhail Melnik
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説株式会社クライム
 
版本控制 使用Git & git hub
版本控制   使用Git & git hub版本控制   使用Git & git hub
版本控制 使用Git & git hub維佋 唐
 
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~真乙 九龍
 
初心者 Git 上手攻略
初心者 Git 上手攻略初心者 Git 上手攻略
初心者 Git 上手攻略Lucien Lee
 

What's hot (20)

V sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてV sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについて
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
 
Why Aren't You Using Git Flow?
Why Aren't You Using Git Flow?Why Aren't You Using Git Flow?
Why Aren't You Using Git Flow?
 
Git由超淺入超深
Git由超淺入超深Git由超淺入超深
Git由超淺入超深
 
ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414ネットワークOS野郎 ~ インフラ野郎Night 20160414
ネットワークOS野郎 ~ インフラ野郎Night 20160414
 
インターネットの仕組みとISPの構造
インターネットの仕組みとISPの構造インターネットの仕組みとISPの構造
インターネットの仕組みとISPの構造
 
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
「これからはじめるNGINX技術解説~基本編」セミナー (NGINX Back to Basic in JP)
 
マスタリングTCP/IP ニフクラ編
マスタリングTCP/IP ニフクラ編マスタリングTCP/IP ニフクラ編
マスタリングTCP/IP ニフクラ編
 
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみるいまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる
いまどきの組込みOSの​ ZephyrRTOSと​ OpenThreadを​ Arduino環境で遊んでみる
 
Git workflows
Git workflowsGit workflows
Git workflows
 
Scaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardScaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ Dcard
 
Git Introduction Tutorial
Git Introduction TutorialGit Introduction Tutorial
Git Introduction Tutorial
 
Git flow
Git flowGit flow
Git flow
 
BitBucket presentation
BitBucket presentationBitBucket presentation
BitBucket presentation
 
Git Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-FlowGit Series. Episode 3. Git Flow and Github-Flow
Git Series. Episode 3. Git Flow and Github-Flow
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説
Veeam v12新機能セミナー!クラウドへの直接バックアップ、多要素認証など便利機能をまるっと解説
 
版本控制 使用Git & git hub
版本控制   使用Git & git hub版本控制   使用Git & git hub
版本控制 使用Git & git hub
 
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
 
初心者 Git 上手攻略
初心者 Git 上手攻略初心者 Git 上手攻略
初心者 Git 上手攻略
 

Similar to Gitlab教學

Git and git hub
Git and git hubGit and git hub
Git and git hub唯 李
 
Git & git flow
Git & git flowGit & git flow
Git & git flowAmo Wu
 
用 Go 語言 打造微服務架構
用 Go 語言打造微服務架構用 Go 語言打造微服務架構
用 Go 語言 打造微服務架構Bo-Yi Wu
 
A successful git branching model 導讀
A successful git branching model 導讀A successful git branching model 導讀
A successful git branching model 導讀Wen Liao
 
Git流派與工作流程.pptx
Git流派與工作流程.pptxGit流派與工作流程.pptx
Git流派與工作流程.pptx健誠 呂
 
用Bluemix DevOps 建立良好的團隊開發與版本控制
用Bluemix DevOps 建立良好的團隊開發與版本控制用Bluemix DevOps 建立良好的團隊開發與版本控制
用Bluemix DevOps 建立良好的團隊開發與版本控制Hsuan-Ju Lin
 
GIT實務操作與理論
GIT實務操作與理論GIT實務操作與理論
GIT實務操作與理論鵬 大
 
Git Flow 管理
Git Flow 管理Git Flow 管理
Git Flow 管理Pu Lee
 
Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshellNelson Tai
 
Use Git-flow Manage Your Git Workflow
Use Git-flow Manage Your Git WorkflowUse Git-flow Manage Your Git Workflow
Use Git-flow Manage Your Git WorkflowLiangjun Jiang
 
Git入门与实践
Git入门与实践Git入门与实践
Git入门与实践LC2009
 
Git與source tree 基礎教學
Git與source tree 基礎教學Git與source tree 基礎教學
Git與source tree 基礎教學Duncan Chen
 
Lotus Notes 版本比較
Lotus Notes 版本比較Lotus Notes 版本比較
Lotus Notes 版本比較Cory Ma
 
Mobile UI design and Developer
Mobile UI design and DeveloperMobile UI design and Developer
Mobile UI design and Developerjay li
 
網頁標記語言2
網頁標記語言2網頁標記語言2
網頁標記語言2東偉 蘇
 
Office2013 teaching material
Office2013 teaching materialOffice2013 teaching material
Office2013 teaching materialJames Yeh
 

Similar to Gitlab教學 (20)

Git and git hub
Git and git hubGit and git hub
Git and git hub
 
Git & git flow
Git & git flowGit & git flow
Git & git flow
 
Git for everyone
Git for everyoneGit for everyone
Git for everyone
 
用 Go 語言 打造微服務架構
用 Go 語言打造微服務架構用 Go 語言打造微服務架構
用 Go 語言 打造微服務架構
 
A successful git branching model 導讀
A successful git branching model 導讀A successful git branching model 導讀
A successful git branching model 導讀
 
Git流派與工作流程.pptx
Git流派與工作流程.pptxGit流派與工作流程.pptx
Git流派與工作流程.pptx
 
用Bluemix DevOps 建立良好的團隊開發與版本控制
用Bluemix DevOps 建立良好的團隊開發與版本控制用Bluemix DevOps 建立良好的團隊開發與版本控制
用Bluemix DevOps 建立良好的團隊開發與版本控制
 
GIT實務操作與理論
GIT實務操作與理論GIT實務操作與理論
GIT實務操作與理論
 
Git簡報
Git簡報Git簡報
Git簡報
 
Git Flow 管理
Git Flow 管理Git Flow 管理
Git Flow 管理
 
Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshell
 
Use Git-flow Manage Your Git Workflow
Use Git-flow Manage Your Git WorkflowUse Git-flow Manage Your Git Workflow
Use Git-flow Manage Your Git Workflow
 
Git入门与实践
Git入门与实践Git入门与实践
Git入门与实践
 
Cocoa on Rails 4th
Cocoa on Rails 4thCocoa on Rails 4th
Cocoa on Rails 4th
 
Git與source tree 基礎教學
Git與source tree 基礎教學Git與source tree 基礎教學
Git與source tree 基礎教學
 
Lotus Notes 版本比較
Lotus Notes 版本比較Lotus Notes 版本比較
Lotus Notes 版本比較
 
Mobile UI design and Developer
Mobile UI design and DeveloperMobile UI design and Developer
Mobile UI design and Developer
 
網頁標記語言2
網頁標記語言2網頁標記語言2
網頁標記語言2
 
Office2013 teaching material
Office2013 teaching materialOffice2013 teaching material
Office2013 teaching material
 
Git
GitGit
Git
 

Gitlab教學

Editor's Notes

  1. 視覺操作為主,指令操作為輔