Git简介、命令
一、Git 和 SVN 的區(qū)別
(一) SVN 優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
管理方便,邏輯明確
易于管理,集中式服務(wù)器更能保證安全性
代碼一致性非常高
適合開發(fā)人數(shù)不多的項目開發(fā)
缺點(diǎn):
服務(wù)器壓力太大,數(shù)據(jù)庫容量暴增
如果不能連接到服務(wù)器上,基本上不可以 工作,如果服務(wù)器不能連接上,就不能提 交,還原,對比等等
不適合開源開發(fā)
(二) Git 優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
適合分布式開發(fā),強(qiáng)調(diào)個體
公共服務(wù)器壓力和數(shù)據(jù)量都不會太大
速度快,靈活
任意兩個開發(fā)者之間可以很容易的解決沖
突
缺點(diǎn):
學(xué)習(xí)周期相對而言比較長
代碼保密性差,一旦開發(fā)者把整個庫克隆 下來就可以完全公開所有代碼和版本信息
二、Git Bash 使用(命令行)
三、Git 的命令行使用
四、Git 本地操作(add commit status –reset hard refglog)實(shí)際操作
五、注冊 gitHub 賬號
六、從 gitHub 或碼云上下載項目
(一) 切換到存放 git 版本庫的地方
(二) Git clone url(github 上的地址)
七、設(shè)置全局用戶名(提交代碼的時候就會將用戶名 和郵箱存入版本庫中,其他開發(fā)人員就可以看到 是誰提交的代碼)
(一) git config --global user.name github 上的用戶名
八、設(shè)置全局的郵箱
(一) git config --global user.email 郵箱
九、查看全局郵箱
(一) git config --global user.email
十、 查看所有配置信息
(一) git config --list
十一、 master:主分支
十二、 git 的三個區(qū)
(一) workspace 工作區(qū)(當(dāng)前編輯的代碼區(qū)):新添 加的,和修改的未 add 操作的。
(二) stage 暫存區(qū)(作為過渡層、避免誤操作、保 護(hù)工作區(qū)和版本區(qū)、分支處理):add 操作過后, 會進(jìn)入暫存區(qū)
(三) repository 版本庫(版本控制,本地倉庫): commit 操作后,會進(jìn)入本地倉庫
(四) remote(遠(yuǎn)程倉庫):push 操作后,會提交到遠(yuǎn)程倉庫
十三、Git 命令
(一) Git status (查看工作區(qū))
(二) Git add 文件名 1 文件名 2 …… (將一個或 多個文件添加到暫存區(qū))
Git add . (將所有工作區(qū)的中修改的和新 添加的內(nèi)容加入暫存區(qū))
或者: git add –A (將所有工作區(qū)的中修改 的和新添加的內(nèi)容加入暫存區(qū))
或者:git add * (將所有工作區(qū)的中修改的和 新添加的內(nèi)容加入暫存區(qū))
Git add 目錄名 (將指定目錄加入暫存區(qū))
(三) Git commit –m “注釋內(nèi)容” (將所有文件從 暫存區(qū)存入版本區(qū))
(四) Git commit 文件 1 文件 2 –m “注釋內(nèi)容” (提交暫存區(qū)的指定文件)
(五) git commit -a -m “注釋” (直接從工作區(qū)存入 暫存區(qū)再存入版本區(qū),-a:存入暫存區(qū),-m:存入 版本區(qū))
(六) git log (查看日志) : 如果版本太多,一次顯示 不全,想要退出此狀態(tài),請按 q
(七) 對比
Git diff (工作區(qū)與暫存區(qū)的差異對比)
Git diff --cached(–staged) (暫存區(qū)也版本庫 的差異對比)
Git diff master (工作區(qū)與版本庫的差異對比)
(八) 撤銷
Git reset HEAD <file.name> (從暫存區(qū)撤銷回 工作區(qū),發(fā)現(xiàn)提交錯了,退回一步)
Git reset HEAD (撤銷上一次 add 提交的所 有文件)
Git checkout – <file.name> (從工作區(qū)撤銷回上 一次提交的版本區(qū))
Git commit --amend (撤銷上一次的提交命令, 重新提交新的代碼)
(九) 刪除
Git rm <file.name> (如果工作區(qū)刪除了一個文 件,通過此命令可以把暫存區(qū)的文件刪除)
Git rm -f <file.name>(如果刪除暫存區(qū)的文件, 那么工作區(qū)和暫存區(qū)的文件都會刪除)
Git rm --cached <file.name> (只刪除暫存區(qū)的 文件,工作區(qū)的文件保留)
(十) 恢復(fù)
Git checkout (commit id) <指定文件> (還原刪除的文件)
Git reset – hard (commit id) (還原版本)
HEAD^ (返回上一個版本)
HEAD~ (返回上幾個版本)
Git reflog (操作記錄,可以回到當(dāng)前版本)
(十一) 同步到遠(yuǎn)程倉庫
Git remote (查看遠(yuǎn)程倉庫的名字)
–v (查看遠(yuǎn)程地址)
Origin (遠(yuǎn)程倉庫的名字)
Git push origin master (推送到遠(yuǎn)程倉庫)
git push -u origin master -f (強(qiáng)制 push 到遠(yuǎn)程倉 庫)
(十二) 多人協(xié)作解決沖突
Git fetch (從遠(yuǎn)程獲取但不與當(dāng)前代碼合并)
Git diff master origin/master (查看兩個沖 突文件的異同)
Git merge origin/master (合并)
Git pull(從遠(yuǎn)程獲取并與當(dāng)前代碼合并)
總結(jié)
- 上一篇: adb-获取包名/界面名、获取app启动
- 下一篇: 在单页应用Vue中设置标题(title)