PPT
Snip20170411_123.png
Snip20170411_125.png
Snip20170411_126.png
Snip20170411_127.png
Snip20170411_128.png
Snip20170411_129.png
Snip20170411_130.png
Snip20170411_131.png
Snip20170411_132.png
Snip20170411_133.png
Snip20170411_134.png
Snip20170411_135.png
Snip20170411_136.png
Snip20170411_137.png
Snip20170411_138.png
Snip20170411_139.png
Snip20170411_140.png
Snip20170411_141.png
Snip20170411_142.png
Snip20170411_143.png
Snip20170411_144.png
Snip20170411_145.png
Snip20170411_146.png
Snip20170411_147.png
Snip20170411_148.png
Snip20170411_149.png
Snip20170411_150.png
Xmind
GIT.jpg
筆記
上課筆記
上課筆記(GIT)1.jpg
上課筆記(GIT)2.jpg
Snip20170412_151.png
01-GIT本地操作
01. GIT簡介(PPT)
================================================================================
02. GIT命令行幫助
================================================================================
$ git help
查看git所有命令的幫助
$ git help 子命令
# 要退出幫助信息,按"q"
# 翻看下頁,按"空格"
# 翻看上頁眷昆,按"CTRL+B"
# 要搜索相關(guān)文字允悦,按"/"然后輸入"相關(guān)文字"
03. 創(chuàng)建代碼庫 & 配置個(gè)人信息
================================================================================
1> 創(chuàng)建代碼倉庫
$ git init
2> 配置用戶名和郵箱
$ git config user.name manager
$ git config user.email manager@gmail.com
* 以上兩個(gè)命令會將用戶信息保存在當(dāng)前代碼倉庫中
3> 如果要一次性配置完成可以使用一下命令
$ git config --global user.name manager
$ git config --global user.email manager@gmail.com
* 以上兩個(gè)命令會將用戶信息保存在用戶目錄下的 .gitconfig 文件中
4> 查看當(dāng)前所有配置
$ git config -l
04. 實(shí)際開發(fā)
================================================================================
1> 創(chuàng)建代碼,開始開發(fā)
$ touch main.c
$ open main.c
2> 將代碼添加到代碼庫
# 查看當(dāng)前代碼庫狀態(tài)
$ git status
# 將文件添加到代碼庫
$ git add main.c
# 將修改提交到代碼庫
$ git commit -m "添加了main.c"
提示:
* 在此一定要使用 -m 參數(shù)指定修改的備注信息
* 否則會進(jìn)入 vim 編輯器莲趣,如果對vim不熟悉鸳慈,會是很糟糕的事情
# 將當(dāng)前文件夾下的所有新建或修改的文件一次性添加到代碼庫
$ git add .
3> 添加多個(gè)文件
$ touch Person.h Person.m
$ git add .
$ git commit -m "添加了Person類"
$ open Person.h
$ git add .
$ git commit -m "增加Person類屬性"
* 注意 使用git時(shí),每一次修改都需要添加再提交喧伞,這一點(diǎn)是與svn不一樣的
git 的重要概念及工作原理
--------------------------------------------------------------------------------
工作區(qū)
暫存區(qū)(staged)
分支(HEAD)
05. 別名 & 日志
================================================================================
$ git config alias.st status
$ git config alias.ci "commit -m"
除非特殊原因走芋,最好不要設(shè)置別名绩郎,否則換一臺機(jī)器就不會用了
# 查看所有版本庫日志
$ git log
# 查看指定文件的版本庫日志
$ git log 文件名
# 配置帶顏色的log別名
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
提示:在git中,版本號是一個(gè)由SHA1生成的哈希值
06. 版本號翁逞,讓我們在任意版本之間穿梭
================================================================================
# 回到當(dāng)前版本肋杖,放棄所有沒有提交的修改
$ git reset --hard HEAD
# 回到上一個(gè)版本
$ git reset --hard HEAD^
# 回到之前第3個(gè)修訂版本
$ git reset --hard HEAD~3
# 回到指定版本號的版本
$ git reset --hard e695b67
# 查看分支引用記錄
$ git reflog
02-GIT團(tuán)隊(duì)開發(fā)操作
01. 建立代碼倉庫(專門用于團(tuán)隊(duì)開發(fā)的代碼倉庫)
================================================================================
# 切換目錄
$ cd /Users/Desktop/git演練/公司/weibo
# 建立空白代碼庫(專門用于團(tuán)隊(duì)開發(fā))
$ git init --bare
02. 項(xiàng)目經(jīng)理準(zhǔn)備項(xiàng)目(前奏)
================================================================================
# 切換目錄
$ cd /Users/Desktop/git演練/經(jīng)理
# "克隆"代碼庫到本地
$ git clone /Users/Desktop/git演練/公司/weibo/
# 個(gè)人信息配置(因?yàn)橐菔疽慌_機(jī)器上的多人協(xié)作,日常開發(fā)可以忽略)
$ git config user.name manager
$ git config user.email manager@163.com
.gitignore
--------------------------------------------------------------------------------
.gitignore可以指定哪些文件不納入版本庫的管理
參考網(wǎng)址:https://github.com/github/gitignore
# 命令行中進(jìn)入與.git同級的目錄
$ cd /Users/Desktop/git演練/經(jīng)理/weibo
將以下命令一次性粘貼到命令行中
--------------------------------------------------------------------------------
echo -e "# Xcode
#
build/
*.pbxuser
*.mode1v3
*.mode2v3
*.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control
#
# Pods/" > .gitignore
--------------------------------------------------------------------------------
# 將.gitignore添加到代碼庫
$ git add .gitignore
03. 創(chuàng)建項(xiàng)目
================================================================================
提交同時(shí)"push"到遠(yuǎn)程代碼倉庫
04. 新人加入
================================================================================
...
05. 分布式的代碼庫 - 僅供參考
================================================================================
由于git是分布式的挖函,任何一臺計(jì)算機(jī)上都保留有完整的代碼庫的內(nèi)容状植,因此可以把團(tuán)隊(duì)開發(fā)的代碼庫放在任何位置
03-GIT分支管理(了解)
01. 分布式的代碼庫 - 僅供參考
================================================================================
由于git是分布式的,任何一臺計(jì)算機(jī)上都保留有完整的代碼庫的內(nèi)容怨喘,因此可以把團(tuán)隊(duì)開發(fā)的代碼庫放在任何位置
多個(gè)遠(yuǎn)程代碼庫之間的同步演練"提示浅萧,此演練僅供了解,具體的使用哲思,需要一定的團(tuán)隊(duì)規(guī)模之后洼畅,才能夠體會"
02. 分支管理 - Tag
================================================================================
# 查看當(dāng)前標(biāo)簽
$ git tag
# 在本地代碼庫給項(xiàng)目打上一個(gè)標(biāo)簽
$ git tag -a v1.0 -m 'Version 1.0'
# 將標(biāo)簽添推送到遠(yuǎn)程代碼庫中
$ git push origin v1.0
# 使用tag,就能夠?qū)㈨?xiàng)目快速切換到某一個(gè)中間狀態(tài)棚赔,例如產(chǎn)品開發(fā)線上的某一個(gè)穩(wěn)定版本
# 簽出v1.0標(biāo)簽
$ git checkout v1.0
# 從簽出狀態(tài)創(chuàng)建v1.0bugfix分支
$ git checkout -b bugfix1.0
# 查看遠(yuǎn)程分支
$ git branch -r
# 刪除遠(yuǎn)程分支
$ git branch -r -d origin/bugfix1.0
04-GITHUB使用&如何學(xué)習(xí)第三方庫
如何使用/學(xué)習(xí)第三方框架?
優(yōu)秀的第三方框架都在 github.com
1> 搜索
2> git clone 獲得完整版本
$ git clone https://github.com/AFNetworking/AFNetworking.git
3> 獲取最新版本 git pull
* 進(jìn)入clone的本地文件夾
$ git pull
4> 看github上的文檔,優(yōu)秀的第三方框架都有好的文檔
5> 編寫測試程序,看運(yùn)行結(jié)果
6> 針對感興趣的部分,看源代碼
7> 有問題去http://stackoverflow.com