Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Git 基礎講座
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Davy
May 15, 2015
Programming
450
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Git 基礎講座
Talk in
http://nos.kktix.cc/events/be177e6a
Davy
May 15, 2015
More Decks by Davy
See All by Davy
Operator SDK 帶你玩轉 Kubernetes
davy_tw
0
480
GraphQL 簡介
davy_tw
0
140
2016 計中短期資訊推廣課程 —— 多人線上繪圖板
davy_tw
0
200
Open Source Software and Culture -- Crystal
davy_tw
1
230
簡潔優雅的語言 —— Crystal
davy_tw
0
220
各種工具介紹
davy_tw
1
180
Crystal
davy_tw
0
320
Mail Server
davy_tw
0
150
PHP Cookie/Session MySQL 資料庫操作
davy_tw
1
240
Other Decks in Programming
See All in Programming
社内AIエージェント「Askワンバン」における コストチューニングの取り組み
t0yohei
0
110
Kotlinの15年とServer-Side Kotlin
n_takehata
1
170
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
640
動画プレイヤーはなぜカクつくのか 〜Flutterのレンダリングとネイティブの境界を解剖する〜
naruogram
0
290
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
370
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
390
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
16
8.9k
AmebaブログはKMPから卒業します
kmars0605
0
300
ActionController meets Protocol Buffers
sorah
1
750
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.4k
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
200
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
160
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.4k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
For a Future-Friendly Web
brad_frost
184
11k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
290
How to train your dragon (web standard)
notwaldorf
96
6.9k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.5k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
500
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
340
Transcript
Git 基礎講座 中央大學網路開源社 資管二 郭子德
[email protected]
None
版本 控制 Revision control
None
初學者的最佳玩伴
開始寫程式
我寫寫寫……
寫完記得存檔
確認存檔無誤
編譯並執行
什麼事也沒發生 ???
加入暫停
大功告成
作業需求
勤勞是美德
原本長這樣
新增新增
修改修改
又改又改
再改再改
花了 兩天 2 days long
寫爛了 BUUUUUUUUUUG
改回來
改回來
改回來
改回來
改回來
更好的辦法
版本控制
in 人工 way
恩……?
恩……?
◢▆▅▄▃-崩╰(〒皿〒)╯潰-▃▄▅▆◣ FUUUUUUUUU
多人 合作 Teamwork
Teamwork?
互相 覆蓋 ◢▆▅▄▃-崩╰(〒皿〒)╯潰-▃▄▅▆◣
版本 控制 Revision control
本地端 版本控制 Local
本地端版本控制
集中式 版本控制 CVCS
集中式版本控制
分散式 版本控制 DVCS
分散式版本控制
None
安裝 Git Install Git
apt-get install git yum install git pacman –S git Install
Git on Linux
XCode 命令列工具 Install Git on Mac OSX
msysgit https://msysgit.github.io Install Git on Windows
git config --global user.email "
[email protected]
" git config --global user.name "Your
Name" git config --global color.ui true Setting Git
Commands git COMMAND [ARGUMENTS]
help me git COMMAND --help
clone – 複製 repository git clone git://github.com/git/hello-world.git
init – 在此建立新的 repository git init
status – 查看目前狀態 git status
log – 查看 commit 記錄 git log
diff – 查看差異 git diff
diff – 查看差異 git diff [commit_id] [file]
show – 查看 commit git show [commit_id]
Staging Area http://git-scm.com/about/staging-area
示範 git init
示範 git init
touch README.txt 示範
示範 git status
示範 On branch master Initial commit Untracked files: (use "git
add <file>..." to include in what will be committed) README.txt nothing added to commit but untracked files present (use "git add" to track)
add – 將檔案加入 Staging git add [files]
add – 將所有檔案加入 Staging git add .
示範 git add README.txt
示範 git status
示範 On branch master Initial commit Changes to be committed:
(use "git rm --cached <file>..." to unstage) new file: README.txt
reset – 將檔案移出 Staging git reset [file]
commit – 將 Staging 的檔案存入 Repository git commit
示範
commit log 格式 標題 [空行] 內容
示範
示範 [master (root-commit) 6ce65d4] Initial commit 1 file changed, 0
insertions(+), 0 deletions(-) create mode 100644 README.txt
commit log 如何 撰寫
commit log 如何 撰寫
commit log 如何 撰寫 http://www.reddit.com/r/shittyprogramming/comments/1skq3s/my_buddy_is_a_phenomenal_programmer_but_really/
如何撰寫 Commit
智慧型忽略 .gitignore
.gitignore 中繼檔 暫存檔 記錄檔
checkout – 切換到特定版本 git checkout [commit_id]
checkout – 切換到特定版本 git checkout [commit_id] [file]
branch – 建立分支 git branch BRANCH
branch Commit 別名
merge – 融合版本 git merge [commit_id]
示範
示範 git add . git commit
示範 git branch apple git branch banana git checkout apple
示範
示範 git add . git commit
示範 git checkout banana
示範
示範
示範 git add . git commit
示範 git log --graph --all
示範
示範
示範 git checkout master
示範 git merge apple
示範 Updating ea51d2c..339a0fc Fast-forward README.txt | 2 ++ 1 file
changed, 2 insertions(+)
Fast-forward 快速 前進
示範 git merge banana
示範 Auto-merging README.txt Merge made by the 'recursive' strategy. README.txt
| 2 ++ 1 file changed, 2 insertions(+)
示範
示範 Magic!
push – 推送 git push
pull – 拉回 git pull
Staging Area http://zoomq.qiniudn.com/ZQScrapBook/ZqFLOSS/data/20081210180347/
Do yourself 嘗試 看看
Ref https://speakerdeck.com/crboy/code-smart- dont-code-hard Code Smart, Don't Code hard by
crboy http://denny0223.github.io/HackGen-2014- workshop/#28 Git by Denny Huang
Q & A 任何 問題