node.js零基礎詳細教程(3):npm包管理、git github的使用


第三章  建議學習時間4小時  課程共10章

學習方式:詳細閱讀,並手動實現相關代碼

學習目標:此教程將教會大家 安裝Node、搭建服務器、express、mysql、mongodb、編寫后台業務邏輯、編寫接口,最后完成一個完整的項目后台,預計共10天課程。

 

npm包管理


 什么是npm

npm是隨同NodeJS一起安裝的包管理工具,只要安裝了node,我們就可以通過命令行使用npm

啟動命令行,運行 npm -v  就可以看到npm的版本號,根據安裝的node版本不同,內部集成的npm頁不同,只要能顯示一個辦號,就表示npm可用

 

npm作用:

  • 允許用戶從NPM服務器下載別人編寫的第三方包到本地使用。
  • 允許用戶從NPM服務器下載並安裝別人編寫的命令行程序到本地使用。
  • 允許用戶將自己編寫的包或命令行程序上傳到NPM服務器供別人使用。

下載別人的第三方包到本地

使用 npm install 包名

這里我們在 nodeTest文件運行命令行, 運行 npm install jquery 就可以自動下載jq的最新版本。

 

下載成功后,就可以去磁盤文件夾查看,當前目錄會多一個  node_modules的文件夾,里面就有jquery的全部文件,如下圖的路徑,就可以找到jquery.js了。

 

使用 npm uninstall 包名  卸載模塊

運行  npm uninstall jquery 以后,在去查看文件,會發現該目錄下 node_modules 文件夾中的 jquery已經被刪除了。

 

安裝別人的命令行程序到本地

 這里我們下載  express-generator到本地

express-generator說明:它是一個node的自動化創建項目工具,可以自動創建一個項目的初始網站,包含一些基本頁面,可以通過瀏覽器訪問,以后我們會詳細介紹,這里大家先知道它的作用

命令行運行 npm install -g express-generator

 

 

安裝完成后就把 express-generator安裝到了全局變量中  (說明:命令行中的 -g 表示該模塊安裝到全局,如果沒有-g就將模塊安裝到當前目錄)

 

然后運行   express 項目名   創建一個項目 (這里演示初始化了一個叫做  exTest的項目)

 

 

如何啟動這個項目呢?

1、進入項目目錄  cd exTest

2、安裝項目依賴模塊

由於創建的項目中有個自帶的pakage.js文件中已經規定了需要引入的模塊,這里直接運行 npm install安裝依賴

由於是從國外服務器下載,所以可能會等待一會兒才能安裝完成

出現一長串的安裝提示,到下圖的狀態表示安裝完成

 

2、運行項目  npm start

注:如果出現下圖的報錯提示,表示3000端口被占用,可能有前面運行的http命令行,把其他命令行都關閉再運行這個。

 

運行成功是這個狀態

然后通過瀏覽器輸入 http://localhost:3000/ 就可以訪問到項目首頁了,如下圖。

 

到這里我們就成功安裝了一個庫、一個項目構建工具。大家先實現以下再往下看

 

 

GIT的使用


 

說明:git只是 代碼的版本管理工具,不是nodejs必學類容,大家自行選擇是否需要學習。

 

介紹:

為什么要使用版本控制:因為我們在編碼過程中,會對軟件進行各種修改,而且很可能需要在以后某個時候撤銷到以前某個時間編寫的樣子,我們如果手動復制備份,不僅工程量大,而且不便於管理,這就需要有一個版本控制器,讓我們可以自由的將以前寫的各個時間段的版本進行保存

常見的版本控制有以下三種:

1、微軟的cvs    -- 收費,切只能window使用

2、svn 版本控制良好,但需要一個非本地的服務器(不能本地離線提交版本)

3、git 新一代的版本控制,可以離線實現版本控制,而且可以結合免費的 github網絡倉庫管理代碼,十分方便

 

下載安裝

 本課程軟件下載 鏈接:http://pan.baidu.com/s/1kVPxBJT 密碼:uziu

官網下載:https://git-scm.com/downloads

 

下載完成后,安裝直接下一步、下一步即可,安裝完成后,要檢測是否安裝成功,在桌面空白位置,點擊鼠標右鍵出現圖中紅框中內容即安裝成功

 

注冊一個github賬號

注:英文網站,可以使用google進行訪問,右上角有個翻譯按鈕可以將網站翻譯成中文,另外,注冊可以參考如下鏈接 :http://jingyan.baidu.com/article/455a9950abe0ada167277864.html

 

 

如何運行git:

建立一個測試文件夾,然后在自己的文件夾右鍵 點擊 git bash hare   我們這里的測試文件是d盤的 nodeTest\gitTest

首先需要配置一下你的郵箱和用戶名

下面代碼可以復制,在命令行中粘貼(注:ctrl+v在命令行不管用,需要右鍵 -- paste  才能粘貼進去)

git config --global user.name  "你的用戶名"

git config --global user.email  "郵箱"

 

運行 git config --list 可以看到所有的配置項,下部找到 name 和email 看是否配置成功。

 

運行 git init初始化,

 

然后就可以看到當前目錄有一個隱藏的 .git文件夾,(如果隱藏文件看不到的,請自行百度如何查看隱藏文件),這個文件夾中是git的版本控制文件,千萬不要去動。

 

這樣 gitTest文件夾就變成了git可以監控的文件夾了,以后文件夾任意的修改,都會被監控並記錄下來

我們先建一個a.txt文件(注意編碼格式最好是 utf-8)

在里面寫入一點兒內容 保存

 

 然后命令行 輸入 git status 可以查看到有記錄的對 a.txt的修改

 

接下來我們先做幾個繼續往下的操作,然后在解釋這些操作是什么意思

我們運行 git add .         (注意后面有個空格點)

然后運行  git commit -m "a"             得到如下結果

然后修改一下 a.txt中的內容  並保存,在 當前文件夾 創建  b.txt  

(說明:我們對文件修改/提交后 文件 左下角會有綠色的勾表示已經提交。或紅色的嘆號表示被修改了沒提交)

再命令行 運行   git  status  可以看到如下結果

 

 

 理解上面的過程:

這里需要先弄清楚 git的幾個監聽區域:工作區、暫存區、版本庫

工作區:你對當前文件做的所有修改,都屬於工作區 使用 git status 就可以看到修改的文件。

暫存區:通過上面 git add . 添加的狀態  (后面的 點 表示對當下所有的更改添加到暫存區),添加到暫存區的文件可以撤銷,也可以提交到版本庫

版本庫:最后的存放點,在git內部會對每個版本庫存一個狀態(功能類似創建了很多的備份,可以隨意恢復任何一個版本,當然,git只是存了變化的地方,而非真的是備份)

 

那么,我們來看看上面運行過的命令

git add .                   表示添加當前的所有修改到暫存區 ,   如果只提交某個文件的修改,可以給文件名  如     git add a.txt

 git commit -m "a"    表示將暫存區的修改提交到版本庫,形成一個固定的版本保存下來, -m 后面的引號內是 提交的注釋說明,可以寫“修改了xxxx”。

git status                 顯示工作區和暫存區的所有修改狀態。工作區的是紅色的顯示,暫存區的是綠色的顯示(如下圖:只是一個示例說明,不跟着操作)

 

我們再 運行一下  添加和提交命令,將剛剛對a.txt  b.txt的修改提交   

 

查看版本庫 git  log                  下面的黃色打印部分,是每次修改的獨一無二的id  (你的id和我的肯定也不一樣)

退回某個版本,

 這里我們復制最后那個版本號 運行  git reset --hart 版本id 來退回

如下圖,運行完成就退回了,剛我們創建的 b.txt沒有了(退回到了創建以前)

 

 

當然也可以退回到最上面那個 id版本,運行后又回到了b.txt已經提交了的狀態

 

 

前面講了退回到某個版本,那么怎么撤銷工作區的修改呢?

使用命令    git checkout -- 文件名   ,可以將該文件的修改撤銷到上一次 git add 到暫存區的狀態。

比如我們先對a.txt作一下修改。添加了部分內容

 

然后我運行 git status 看效果,表示已經修改了

然后運行git ceckout -- a.txt 撤銷 ,執行完成,就可以看到上一步給a.txt添加的內容被撤銷了

 

git checkout -- . 可以撤銷所有修改,建議不要使用,因為這個會把所有沒有 add的修改都撤銷,而且不可逆。

 

push項目到 github網站


 前面已經讓大家注冊了github的賬號,如果沒有注冊的先注冊一個

 

然后登陸,登陸完成以后,點擊如下圖右上角的 新建 來新建一個倉庫

 

在新建界面中輸入倉庫名,確定即可

 

創建之后,會自動跳轉進入下面的界面,下圖中划線的地方是 提交地址設置 和 提交的 命令行命令。先復制下來放着,后面會用。

 

 

 電腦端操作了:我們這里使用ssh秘鑰鏈接,需要在電腦端生成秘鑰(當然,也有其他方式鏈接,有興趣的可搜索“提交文件到 github”看看)

git 的命令行輸入:

ssh-keygen -t rsa -C 你的郵箱地址,到有需要輸入的地方,直接 enter 確定 ,enter多次,直到執行完成

 

 然后就可以在c盤的用戶 administrator文件夾下多了一個 .ssh 的隱藏文件夾

 

 

點開文件夾可以看到兩個文件。這兩個文件是用戶 ssh安全安驗證的秘鑰,.pub文件的公鑰(公用上傳)。id_rsa是私鑰(自己保留)

復制.pub文件內的所有內容。 然后按后續步驟添加到github賬號的 ssh設置中

 

 

回到github官網點擊有右上角頭像右邊箭頭,下拉框中點擊 設置

 

 

設置界面中點擊  ssh and gpg keys ,然后點擊  new  ssh key 按鈕

 

 

點擊確定之后  需要再輸入一次 github的密碼,如下圖,輸入點擊確定

得到如下界面,這樣就將當前電腦和 github 實現了 ssh的驗證了

 

 

然后回到命令行 ,運行前面 創建倉庫的時候 要求大家復制的 那兩條代碼 ,如下圖。(下圖紅框的地方 是你自己的倉庫地址)

 

第一次提交中途可能會遇到提示輸入 用戶名 和 密碼   在提示的地方輸入 github的 賬號 和 密碼 即可。

 

執行完成之后,文件就上傳到 github了,按下面步驟查看是否上傳成功

 如下圖點擊順序,就能找到你自己的倉庫。

 

找到倉庫后打開它

 

 就可以看到 已上傳成功的文件了

 

右邊的綠色按鈕是下載操作。下載項目的地址如下圖

 

 

如何通過git下載別人的項目


 

 上面布置我們已經設置好了git

那么下面,我們新創建一個文件夾來下載別人的項目 

這里我在  d 盤的 nodeTest 下 新建了一個 gitProject 文件夾, 下載的別人的項目就會放到這個文件夾中

1、文件夾中空白處  右鍵  git bush hare

2、命令行輸入  git init 初始化

3、 git pull https://github.com/sutianbinde/jQ-win7.git             如需下載別的項目使用如下格式:git pull 項目git地址

 

 

運行后,項目就被下載下來了。我們去文件夾中就能看到項目了 ,那個Index.html就是項目的入口,使用瀏覽器打開即可查看

 

 

打開后可看到一個類似win7桌面系統的界面 

 

 

 學習需要持之以恆,希望跟學的同學跟上進度哦~

 

 好,今天就講這么多,明天將講解:node.js事件機制、node異步IO操作、路由。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM