当前位置: 首页 > 工具软件 > node-git > 使用案例 >

git+node常用指令

黄无尘
2023-12-01

Git的基本使用

  • 查看帮助:git --help
  • 查看某一命令帮助:git add -h

基础配置

  • 需要配置:user.name 和 user.email
  • 作用:每次 Git 提交时都会引用这两条信息,记录是谁提交了更新
  • 配置用户名: git config --global user.name "用户名" git config --global user.name ‘jack’
  • 配置邮箱: git config --global user.email "邮箱地址" git config --global user.email ‘aa@bb.com’
  • 查看配置信息: git config --list
  • 使用 --global 实现全局配置,任何位置使用git都有效

初始化仓库

  • 命令:git init
  • 作用:使用Git管理项目的初始化操作,会创建一个名为.git的隐藏目录
  • 一般是在项目的根目录执行这个命令
  • .git目录:
它是 Git 用来保存元数据和对象数据库的地方。
该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。

跟踪文件

  • 作用:将文件由 工作区 添加到 暂存区(Index),暂存文件
  • 命令:git add 文件路径
    • 例如: git add ./README.md
  • git add --all 或者 git add -A(简写) 添加所有文件
  • git add a.txt b.txt 同时添加两个文件
  • git add *.js 添加当前目录下的所有js文件

提交更新

  • 作用:将文件由 暂存区 添加到 仓库(HEAD)
  • git commit -m "提交说明"

查看文件状态

  • 命令:git status
  • 命令:git stauts -s 简化日志输出格式

查看提交日志

  • 命令:git log 查看详细的提交信息 sha 值
  • 命令:git log --oneline 简洁的日志信息
  • 命令:git reflog 查看所有提交变更操作

版本回退

  • 作用:恢复到已经提交的某一个版本中
  • 命令:git reset --hard [版本号]
    • 作用:回退到指定的版本号
  • 其他方式:git reset --hard head~1
    • ~1 表示回到上一次提交
    • ~2 表示上上一次提交
    • ~0 表示当前提交

忽略文件

  • 作用:忽略一些不需要被git管理的文件
1 在与 .git 隐藏目录同级的目录中创建 `.gitignore` 文件
2 打开 .gitignore 文件,加入忽略文件,例如:/test.html
3 路径是相对于当前 .gitignore文件 的路径

路径写法:
/css/a.css
/css/*.css
/a.html

#忽略 build/ 目录下的所有文件
build/

忽略文件的说明

  • 1 使用 # 表示注释,例如:# 这是注释内容
  • 2 使用 * 表示通配符,匹配所有文件,例如:/css/*.css

将代码提交到远程仓库(HTTPS)

  • 1 在本地创建仓库
    • git init
    • git config
  • 2 新建 README.md 文件,并输入任意内容
  • 3 将 README.md 提交到本地
    • git add
    • git commit
  • 4 在github中新建仓库,并拿到仓库地址
  • 5 使用命令 git push [仓库地址] master 提交内容到github的默认分支
  • 6 刷新github仓库页面,在线修改 README.md 文件,并提交
  • 7 使用命令 git pull [仓库地址] master 获取仓库中的最新内容

获取远程仓库内容

  • 命令:git pull [仓库地址] [分支名称] 获取远程仓库最新内容
  • 命令:git clone [仓库地址] [自定义本地仓库名] 将整个仓库克隆到本地
    • 实例:git clone git://github.com/jquery/jquery.git myJQ

简化操作

  • 1 git remote add origin [仓库地址]
    • 作用:使用origin代替 仓库地址 ,方便操作
    • origin就相当于js的变量,[仓库地址]就相当于变量的值
  • 2 git push -u origin master
    • 作用:-u参数将origin与master连在一起
  • 3 使用简化命令 git push origin 就代替原来:“git remote add origin [仓库地址]”

执行Node环境代码的方式

  1. 直接在命令行中输入node,进入Node的REPL运行环境:
    • R:Read:读取
    • E:Evaluate:执行
    • P:Print:输出
    • L:Loop:循环
  2. 将Node代码写入到一个js文件中,然后通过node 要执行的JS文件路径去运行Node代码

NPM包管理工具

JS模块的基本单位是单个JS文件,但复杂些的模块往往由多个子模块组成。为了便于管理和使用,我们可以把由多个子模块组成的大模块称做包,并把所有子模块放在同一个目录里。

  • Node.js 的包管理器 npm,是全球最大的开源库生态系统。
    • 先使用npm init -y初始化一下包管理文件package.json,将来所有安装的包,都会记录到这个文件中
    • 使用npm install 包名 --save(默认)/--save-dev去安装包;其中,install可以简写成i;
    • --save表示把包安装到部署依赖中(在开发和部署上线都需要使用的包); --save-dev表示安装到开发依赖(只在项目开发阶段需要用到的包);
    • --save可以简写成-S--save-dev可以简写成-D;
    • npm uninstall 包名 --save/--save-dev或者npm remove 包名 --save/--save-dev
    • npm i webpack -g,其中,-g表示全局安装某些包,通过-g安装的包都在C:\Users\用户名\AppData\Roaming\npm下面
    • 查看全局安装的包:npm list -g --depth 0
    • 如果需要下载指定版本,通过@符号指定版本号,npm i jquery@1.9 -S
    • npm cache clean --force 清除缓存命令

什么是NPM淘宝镜像呢

由于每次安装包需要走国外的网络,速度很慢,所以,淘宝帮我们在国内创建了一个NPM包托管网站,能够提升使用NPM装包时候的速度!

全局安装nrm:  npm i nrm -g
查看已经配置的包托管网站:  nrm ls
切换使用taobao或者cnpm:  nrm use taobao ( nrm use cnpm )

包结构

  • package.json: 包描述文件

  • ⭐dependencies。当前包需要的依赖。这个属性十分重要,NPM会通过这个属性,帮你自动记载依赖的包。(-S)

  • ⭐main。模块引入方法require()在引入包时,会优先检查这个字段,并将其作为包中其余模块的入口,如果不存在这个字段,require()方法会查找包目录下的index.js、index.node、index.json文件作为默认入口。

  • ⭐devDependencies。一些模块只有在开发时需要的依赖。(-D)

  • ⭐scripts。脚本说明对象。该对象指明了在进行操作时运行哪个文件,或者执行哪条命令。可以自己配置命令。

     "start": "node ./app.js",
      "dev": "node ./dev.js"
    },
    // 启动脚本命令: npm run start 或者npm run dev
    
  • bin:用于存放可执行二进制文件的目录

  • lib:用于存放JavaScript代码的目录

  • doc:用于存放文档的目录

  • test:用于存放单元测试用例的代码

包描述文件package.json

  • name。包名,需要在NPM上是唯一的。不能带有空格
  • description。包简介。通常会显示在一些列表中。
  • version。版本名。一个语义化的版本号,通常为x.y.z。该版本号十分重要,常常用于NPM中的分类搜索。
  • maintrainers。包维护者的数组。数组元素是一个包含name、email、web三个属性的json对象。
  • contributors。包贡献者的数组。第一个就是包作者本人。在开源社区,如果提交的patch被merge进master分支的话,就应当加上这个贡献patch的人,格式包含name和:email。如:
"contributors": [{
  "name": "Jackson Tian",
  "email": "mail @gmail.com"
}, {
  "name: "fengmk2",
  "email": "mail2@gmail.com"
}]
  • bugs。一个可以提交bug的URL地址。地址可以是邮件地址,也可以是网址
  • licenses 。包所使用的许可证。例如:
    “licenses”: [{ “type”: “GPLv2”, “url”: “http://www.example.com/licenses/gpl.html”, }]
  • repositories。托管源代码的地址数组。
  • homepage。当前包的网站地址。
  • os。操作系统支持列表。
  • cpu。CPU架构的支持列表。
  • engine。支持的JavaScript引擎列表。
  • builtin。标志当前包是否是内建在底层系统的标准组件。
  • drectories。包目录说明。
  • implements。实现规范的列表。
  • author。包作者。
  • bin。一些包作者希望包可以作为命令行工具使用。

其他

  • npm i josn-server -g 全局安装这个模拟服务器管理的包
  • json-server --watch db.json 监听这个文件,需要在这个文件所在的位置输入这个命令
 类似资料: