Git
什么是Git?
- Git是一款源代碼管理工具(版本控制工具)
- 我們寫的代碼需要使用Git進(jìn)行管理画侣。
- 源代碼有必要管理起嗎?
- 有必要堡妒,因?yàn)槿斯さ娜ヌ幚聿煌陌姹九渎遥鱿鄳?yīng)備份會(huì)很麻煩。
Git安裝(https://git-scm.com/downloads)
Git存儲(chǔ)
初始化Git倉(cāng)儲(chǔ)/(倉(cāng)庫(kù))
命令:git init
-
自報(bào)家門
就是在git中設(shè)置當(dāng)前使用的用戶是誰(shuí)
每一次備份都會(huì)把當(dāng)前備份者的信息存儲(chǔ)起來(lái)
命令:- 配置用戶名:
git config --global user.name "xiaoming"
- 配置郵箱:
git config --global user.email "xm@sina.com"
- 配置用戶名:
-
把代碼放到倉(cāng)儲(chǔ)的門口
-
git add ./readme.md
所指定的文件放到大門口 -
git add ./
把所有的修改的文件添加到大門口
-
-
把倉(cāng)儲(chǔ)門口的代碼放到里面的房間中去
git commit -m "這是對(duì)這次添加的東西的說(shuō)明"
-
git commit --all -m "一些說(shuō)明"
(可以一次性把我們修改的代碼放到房間里)
查看當(dāng)前的狀態(tài)(可以用來(lái)查看當(dāng)前代碼有沒(méi)有被放到倉(cāng)儲(chǔ)中去)
命令:
git status
-
git中的忽略文件
- .gitignore,在這個(gè)文件中可以設(shè)置要被忽略的文件或者目錄皮迟。
- 被忽略的文件不會(huì)被提交倉(cāng)儲(chǔ)里去.
- 一開(kāi)始就要?jiǎng)?chuàng)建,在他前面創(chuàng)建的放不進(jìn)去
- 在.gitignore中可以書寫要被忽略的文件的路徑搬泥,以/開(kāi)頭,
一行寫一個(gè)路徑万栅,這些路徑所對(duì)應(yīng)的文件都會(huì)被忽略佑钾,
不會(huì)被提交到倉(cāng)儲(chǔ)中- 寫法
-
/.idea
會(huì)忽略.idea文件 -
/js
會(huì)忽略js目錄里的所有文件 -
/js/*.js
會(huì)忽略js目錄下所有js文件
-
- 寫法
查看日志
git log
查看歷史提交的日志git log --oneline
可以看到簡(jiǎn)潔版的日志回退到指定的版本
-
git reset --hard Head~0
- 表示回退到上一次代碼提交時(shí)的狀態(tài)
-
git reset --hard Head~1
- 表示回退到上上次代碼提交時(shí)的狀態(tài)
-
git reset --hard [版本號(hào)]
- 可以通過(guò)版本號(hào)精確的回退到某一次提交時(shí)的狀態(tài)
-
git reflog
- 可以看到每一次切換版本的記錄:可以看到所有提交的版本號(hào)
分支
默認(rèn)是有一個(gè)主分支master
查看當(dāng)前有哪些分支
git branch
創(chuàng)建分支
-
git branch dev
- 創(chuàng)建了一個(gè)dev分支
- 在剛創(chuàng)建時(shí)dev分支里的東西和master分支里的東西是一樣的
切換分支
-
git checkout dev
- 切換到指定的分支,這里的切換到名為dev的分支
合并分支
-
git merge dev
- 合并分支內(nèi)容,把當(dāng)前分支與指定的分支(dev),進(jìn)行合并
- 當(dāng)前分支指的是
git branch
命令輸出的前面有*號(hào)的分支
合并時(shí)如果有沖突,需要手動(dòng)去處理烦粒,處理后還需要再提交一次.
GitHub
- https://github.com
- 不是git,只是一個(gè)網(wǎng)站
- 只不過(guò)這個(gè)網(wǎng)站提供了允許別通過(guò)git上傳代碼的功能
提交代碼到github(當(dāng)作git服務(wù)器來(lái)用)
git push [地址] master
- 示例:
git push https://github.com/huoqishi/test112.git master master
- 會(huì)把當(dāng)前分支的內(nèi)容上傳到遠(yuǎn)程的master分支上
git pull [地址] master
- 示例:
git pull https://github.com/huoqishi/test112.git master
- 會(huì)把遠(yuǎn)程分支的數(shù)據(jù)得到:(注意本地-要初始一個(gè)倉(cāng)儲(chǔ)!)
git clone [地址]
- 會(huì)得到遠(yuǎn)程倉(cāng)儲(chǔ)相同的數(shù)據(jù),如果多次執(zhí)行會(huì)覆蓋本地內(nèi)容休溶。
git clone :將git網(wǎng)站上的具體的一個(gè)倉(cāng)庫(kù)中的代碼下載下來(lái)
git status -s: 查看本地的文件管理狀態(tài) -s:看它的簡(jiǎn)要信息
git add . :將本地的所有文件加入到.git 中
git commit -m '注釋' 提交文件到本地 .git
git remote add 遠(yuǎn)程倉(cāng)庫(kù)的別名 倉(cāng)庫(kù)的路徑(htts)
git remote :查看本地的所有別名列表
git push 遠(yuǎn)程倉(cāng)庫(kù)的別名 master :將文件提交給遠(yuǎn)程倉(cāng)庫(kù)
npm下載功能
- npm是基于node的,下載【node.msi格式】(http://nodejs.cn/download/)
- 直接下一步安裝就可以了扰她,
查看node 和 npm版本
node -v
6.91
npm -v
3.10.8 - 在桌面新建文件夾兽掰,不要有中文
按住shift打開(kāi)命令窗口, -
npm init -y
格式化npm - 會(huì)出來(lái)name信息徒役,多了(package.json文件)
-
npm install angular
(下載angular孽尽,后面沒(méi)有參數(shù)) - 會(huì)多出來(lái)node_modules文件夾,里面就有angular可以直接使用
- 兩個(gè)參數(shù)
-
npm install angular--save
- 多了這個(gè)
dependencies": {
"angular": "^1.6.2"
}
- 多了這個(gè)
-
npm install angular--save-dev
(開(kāi)發(fā)依賴)- 多了這個(gè)
"devDependencies": {
"angular": "^1.6.2"
}
- 多了這個(gè)
- 工作的時(shí)候只要把package.json發(fā)給別人就可以了,npm install就可以自己下載了忧勿,保證了版本的信息相同,和方便