git拉取項目以及git的幾點特性

git + composer拉取項目

1.先從遠(yuǎn)程倉庫克隆項目

git clone https://github.com/pengloo53/learngit.git

2.composer安裝json中的所需第三方

composer install

因為在lavarel根目錄中有一個 composer.json文件,里面有所需的第三方以及版本

解釋:
1.首先項目目錄是沒有.env文件的,因為大家公用一個數(shù)據(jù)庫,這個文件一般在提交的時候都被忽略,所以只在git最高的版本管理者那里管理這個文件,我們拉下來之后直接復(fù)制一個.env過來,配置好數(shù)據(jù)庫信息即可。
2.為什么第三方也要重新拉呢,因為一個項目有一半左右的體積都是第三方,每個人直接從git克隆不如composer換源之后自己拉取。
3.composer拉取的時候,一定要注意當(dāng)前目錄位置是不是項目根目錄,因為composer不僅拉取了一些文件,還給當(dāng)前環(huán)境生成了很多環(huán)境文件。

3.composer換源

composer config -g repo.packagist composer https://packagist.phpcomposer.com
修改composer的全局配置文件

關(guān)于git

對于版本管理的理解

以前只是覺得版本管理是對文件修改之后合并,提交之類的操作,其實版本管理的意思是默認(rèn)當(dāng)前分支為運(yùn)行分支,并且能夠與其他分支和遠(yuǎn)程倉庫進(jìn)行交互。比如當(dāng)我運(yùn)行了我的laravel項目,在終端版本管理,切換到test分支,在test分支上寫上路由a,當(dāng)我依然在分支test的時候,能訪問到路由a,但是,當(dāng)我切換了分支,再次在瀏覽器輸入路由a的時候,頁面就會報錯。

總結(jié):版本管理就是給你當(dāng)前的文件多個版本,系統(tǒng)能找到的版本就是你目前所在的版本(分支)

其他git特性

1.多層 git
在剛才講的對于git理解的基礎(chǔ)上,再舉個例子:

首先建立空文件  test  并創(chuàng)建a文件
git init 
git checkout -b dev  //創(chuàng)建 dev分支
cd test
git init  
git checkout -b dev2
這個時候,在test外層有兩個分支 master 和 dev
test里面也有兩個分支 master 和 dev2

現(xiàn)在就有兩層的git 這就相當(dāng)于二維數(shù)組一樣,你在每一層所在的分支就是系統(tǒng)按照路徑找過去的時候的版本。

2.刪除.git
首先 git 記錄的是改變,并不記錄版本,當(dāng)你git init 的時候,會生成一個.git的文件夾,這個文件夾里面記錄了所有改變,當(dāng)你刪除了這個文件夾,再git branch的時候,會提示沒有創(chuàng)建過版本倉庫。也就是說,回到文件最初的狀態(tài)。
3.目前還迷惑的一個問題

vim test.php   寫入'1111'
git init
git add .
git commit -m '111'
git checkout -b dev  
vim test2.php  寫入‘2222’
這個時候不做任何git add  和commit
再git checkout master  
ls  發(fā)現(xiàn)里面同樣有 test2.php這個文件(這個文件是在dev分支上創(chuàng)建的)
git checkout  dev  
git add .
git commit -m '333'
這個時候再回到master  發(fā)現(xiàn)里面只有一個文件test.php,在dev分支創(chuàng)建的test2.php沒了。

一樣的道理,假如我在某分支寫了一個路由,提交之后,在這個分支的時候,瀏覽器訪問正常,切另外分支,瀏覽器報錯。
但是當(dāng)我在某分支寫了路由,不做提交,那么瀏覽器訪問任何分支都不會報錯。
假如按照之前的理解,切換到哪個分支,訪問這個路徑就呈現(xiàn)分支的內(nèi)容,那現(xiàn)在這個現(xiàn)象就解釋不了了。
假如像以下這么理解,就是能符合這個現(xiàn)象的:

當(dāng)我們按照路徑訪問這個git所管理的文件時,git呈現(xiàn)的是工作區(qū)和版本倉庫加和在一起的內(nèi)容,當(dāng)像第一個例子,按照正常的流程,修改 add commit之后,工作區(qū)又是干凈的,所以呈現(xiàn)的就是某個分支上的內(nèi)容;但是當(dāng)我們修改了文件,但沒有提交,工作區(qū)是有內(nèi)容的,那么無論我們處在哪個分支,git呈現(xiàn)的則是工作區(qū)和分支的加和。

但是,這個情況似乎沒什么用處,這樣理解也不一定對。希望有正解的你可以分享。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,545評論 19 139
  • 2016.11.19 今天下午去和樂知團(tuán)隊師姐交流,發(fā)現(xiàn)了很多我不曾涉及的領(lǐng)域,但這卻奇異般的不會讓我有距離感,相...
    午間西瓜閱讀 199評論 0 0
  • webview優(yōu)化 Android學(xué)習(xí)之 WebView使用小結(jié) Android 各個版本W(wǎng)ebView 移動前端...
    heiheiwanne閱讀 3,643評論 0 2
  • 這段時間,每天課間操固定的三圈之后我都發(fā)現(xiàn)劉宇軒依然會自覺的再加跑兩圈。讓我由衷的佩服加感動。 一個曾經(jīng)纖...
    一朵云_0805閱讀 277評論 0 0
  • 我思念的她很好 在一千個日日夜夜里都美麗動人 甚至讓浮萍有了留戀 在夢里生出了根。 我看到的她很好 山水秀美田園靜...
    云中過客閱讀 181評論 0 0

友情鏈接更多精彩內(nèi)容