?git 自定義簡寫
$ git config alias.st status? 注意:除非特殊原因,最好不要設(shè)置別名丹允,否則換一臺機(jī)器就不會用了
| 注意:git 中的版本號是一個(gè)40位的哈希值蹄殃,而 SVN 中的版本號是一個(gè)遞增的整數(shù)携茂。
版本
*查看當(dāng)前文件所有版本(修改信息)*
$ git log 文件名
$ git reflog 文件名
文件狀態(tài)
* 已經(jīng)提交
1) $ git reset ——hard HEAD^ 返回上一個(gè)版本? 其中—hard 代
表強(qiáng)制重置
2)$ git reset? ——hard HEAD 回到當(dāng)前版本,放棄所有沒有提 交的修改
3)$ git rest ——hard HEAD~(3) 回到之前第3個(gè)修訂版本
4) git reset e6956b67 回到指定版本號的版本 (只需要寫哈希值前7位)
* 未提交
$ git checkout 文件名 回退到上一次提交的版本
$ git reset —hard HEAD 回到上一次提交的版本诅岩,注意 HEAD 后面沒有尖號^
單個(gè)文件的修改管理
* 撤銷對文件做的修改
$ git diff 文件名
> 如果顯示綠色代表新增
> 如果顯示紅色代表刪除 m
* git checkout 文件名? 回退到上一次提交的版本
?配置遠(yuǎn)程倉庫
SVN 需要一個(gè)單獨(dú)的服務(wù)器讳苦,Git 不需要:文件中、U 盤中吩谦、云上鸳谜、github、OSChina...
本地建立遠(yuǎn)程倉庫
1式廷、建立遠(yuǎn)程倉庫
$ git init —bare
注意:僅僅用于管理代碼咐扭,不參與開發(fā)
2、初始化項(xiàng)目
2.1 先克隆一份空的倉庫到本地
git clone 遠(yuǎn)程倉庫地址
2.2 忽略不需要版本控制器的文件以及文件夾
需要配置.gitIgonre 文件 只需要在 github 上搜索.gitIgnore滑废,選擇別人寫好的代碼蝗肪,配置.gitIgnore 一定要在和.git 隱藏文件夾同一級的目錄下,顯示 ls -la? ls -l
終端配置
1) $ echo -e “ignore 代碼” > .gitIgnore
2.3 生成.gitIgnore 文件之后蠕趁,還需要將.gitIgnore 文件添加到版本控制
$ git add .gitIgnore
$ git status
$ git commit .gitIngore? -m””
2.4 新建項(xiàng)目
source control —> commit 將代碼提交到本地倉庫
source control —> push? 將代碼提交到遠(yuǎn)程倉庫
git中默認(rèn)就會創(chuàng)建一個(gè)分支薛闪,這個(gè)分支叫做 origin/master,相當(dāng)于 svn 中的 trunk
備注:
專業(yè)人員只需要在 git 倉庫的 hooks文件夾中寫一些指令,就可以完成自動測試(壓力測試俺陋、自動測試豁延、集成測試昙篙、冒煙測試。诱咏。苔可。。胰苏。硕蛹。)
?在 xcode 使用git
和 SVN 一樣醇疼。如果服務(wù)器倉庫的代碼被修改了硕并,再次提交代碼也會報(bào)錯(cuò)。
$fetch first == out of data
source control
總結(jié):git 和 svn 最大的區(qū)別
1.git 每次修改新增都需要 add
2.git每臺電腦都有一個(gè)倉庫
3.git 是先提交到本地倉庫秧荆,在提交到遠(yuǎn)程倉庫 倔毙、
?新人服務(wù)器的搭建
1)搭建一個(gè)新人服務(wù)器
2)初始化倉庫
$ git init —bare
3)添加一個(gè)新的遠(yuǎn)程倉庫
source control? —> master? —> config —>remotes —>add remote
4)? 將最新的代碼提交到新人服務(wù)器
?分支管理
在 git 中不是像 svn 一樣通過拷貝代碼的形式來解決備份和開啟分支的,git 也可用”打標(biāo)簽”