Git、npm、nvm、yarn常用命令

目录

1.代码拉取

  • git clone http://gitlab.。。。。。。_wdmc-manager.git
    代码拷贝
  • ls -a
    查看当前文件夹下的文件名
  • cd fj744_src_wdos
    进入 fj744_src_wdos 文件夹里
  • pwd
    用于显示当前目录(如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。)
  • git branch veb
    创建本地分支 veb
  • git checkout veb
    切换本地分支
    在这里也可以直接使用 git checkout veb命令创建与远程分支对应的本地分支 veb,可以避免 veb 和 master(主分支)的冲突
  • git pull origin dev
    拉取远程 dev 分支代码
  • $ git config credential.helper prompt 配置Git的账户认证方式为提示输入用户名和密码。运行命令后,执行git push 输入用户名密码。
    (适用场景:初始化、身份验证失败后)
  • git push origin HEAD --force (死过人)
    回滚后提交可能会失败,必须强制提交,强推到远程:(可能需要解决对应分支的保护状态)

2.查看分支

  • git branch -a
    查看本地所有分支和远程存在的分支
  • git branch -av
    查看本地所有分支和远程存在的分支,并显示最后一次的提交
  • git remote -v
    显示所有远程仓库
  • git remote show origin
    (在你经常使用的命令当中有一个git branch –a 用来查看所有的分支,包括本地和远程的。但是时间长了你会发现有些分支在远程其实早就被删除了,但是在你本地依然可以看见这些被删除的分支。)
    该命令能够获取远端分支信息,你可以看到和本地和远端不同步的地方;过时的就是和本地不同步的分支,本地已过时的表示你需要移除这个分支了。
  • git log
    查看分支提交记录
  • git log -3
    查看前三次提交日志记录
  • git log --pretty=oneline
    只显示 版本号和 commit 提交说明
  • git log --author='XYH'
    单独查询 XYH 提交的代码记录
  • git log --oneline
    查看提交记录的简写模式,只有提交信息和版本号
  • git log --oneline --graph
    查看当前的版本路线
  • git --version
    查看有没有安装 git 和 git 版本号

3.删除分支

  • git branch -d name
    删除本地叫 name 的分支,-d 是 --delete 的缩写,在使用--delete删除分支时,该分支必须完全和它的上游分支merge完成,-D 是 --delete --force 的缩写,这样写可以在不检查merge状态的情况下删除分支,--force简写-f,作用是将当前branch重置到初始点(startpoint),如果不使用--force的话,git分支无法修改一个已经存在的分支, git branch --delete --remotes <remote>/<branch>,可以删除追踪分支,该操作并没有真正删除远程分支,而是删除的本地分支和远程分支的关联关系,即追踪分支
  • git push origin -delete name
    删除远程叫 name 的分支
  • git remote prune origin
    同步远程的分支到本地,这样远程已经被删除的分支,本地就不会再看见了。
  • git remote rm name
    删除远程仓库
  • git remote rename old_name new_name
    修改仓库名

4.合并分支

  • git cherry-pick 02201221555665542
    合并一个分支里的单个提交到另一个分支
  • git merge origin/develop
    把远程develop分支合并到当前分支;
    marge 特点:自动创建一个新的 commit 如果合并的时候遇到冲突,仅
    需要修改后重新 commit;
    优点:记录了真实的 commit 情况,包括每个分支的详情;
    缺点:因为每次 merge 会自动产生一个 merge commit,所以在使用一
    些 git 的 GUI tools,特别是 commit 比较频繁时,看到分支很杂乱。
  • git merge 的撤销
    reset 到 merge 前的版本,然后再重做接下来的操作,要求每个合作者都晓得怎么将本地的 HEAD 都回滚回去:git log查看后退对应版本,git reset --hard 【版本号】,如果需要远程推送的话git push --forced
  • git rebase origin/develop
    把远程develop分支合并到当前分支;
    rebase 特点:会合并之前的 commit 历史;
    优点:得到更简洁的项目历史,去掉了 merge commit;
    缺点:如果合并出现代码问题不容易定位,因为重新写入了。
  • git merge --abort
    合并代码的时候,遇到冲突保留本分支代码,忽略合并来的分支。

5.版本回退

  • git reset --hard HEAD^
    向前回退一个版本
  • git reset --hard HEAD~3
    回退到前3次提交之前,以此类推,回退到n次提交之前
  • git reset --hard commit_id
    退到/进到 指定commit的sha码(回退的是本地,46f39a7 版本号的前七位就行)
  • git push origin HEAD --force
    把回退的版本推送到远程,强行提交到远端
    -git reset --hard
    指的是恢复某一个库*
  • git reset --soft HEAD^
    撤销了你的commit,仅仅是撤回commit操作,您写的代码仍然保留。不撤销git add .
  • git reset HEAD
    如果后面什么都不跟的话 就是上一次add 里面的全部撤销了

6.更换远程仓库地址
git remote set-url origin https://git.e***
修改远程仓库链接(更换远程仓库地址)


推送代码报错 / 拉不下代码(非权限问题)
报错信息:!remote reiected dev -> dev (pre-receive hook declined) / remote: Not Found fatal: repository *** not found
尝试:

  • git credential-cache exit 删除全局凭证缓存
  • git config --unset credential.helper 删除特定存储库的凭证
  • git config --global --unset credential.helper 删除全局存储的凭证

npm

  • npm 的 --unsafe-perm 参数
    npm 出于安全考虑不支持以 root 用户运行,即使你用 root 用户身份运行了,npm 会自动转成一个叫 nobody 的用户来运行,而这个用户几乎没有任何权限。这样的话如果你脚本里有一些需要权限的操作,比如写文件(尤其是写 /root/.node-gyp),就会崩掉了。
    为了避免这种情况,要么按照 npm 的规矩来,专门建一个用于运行 npm 的高权限用户;要么加 --unsafe-perm 参数,这样就不会切换到 nobody 上,运行时是哪个用户就是哪个用户,即使是 root。

1,安装模块命令

  • npm install quill -save
    安装 quill 并写到package.json文件中
  • npm install quill --save
    安装并写入package.json的”dependencies”中
  • npm install quill --save-dev
    安装并写入package.json的”devDependencies”中
  • npm install -g cnpm --registry=https://registry.npm.taobao.org
    安装淘宝镜像
  • npm install -g npm@8.5.3
    更新成指定版本的npm

2,npm更新模块命令

  • npm info quill
    查看模块包 quill 版本
  • npm i quill@latest
    更新到最新版
  • npm i quill@1.3.7
    更新到具体某个版本

3,删除模块

  • npm uninstall quill
    删除 quill 依赖,但不删除模块留在package.json中的对应信息
  • npm uninstall quill --save
    删除 quill 依赖,同时删除模块留在package.json中dependencies下的对应信息
  • npm uninstall quill --save-dev
    删除模块,同时删除模块留在package.json中devDependencies下的对应信息

4,设置npm的源

  • npm config set registry https://registry.npm.taobao.org
    设置淘宝源
  • npm config set registry http://*******
    设置公司的源
  • npm config set registry https://registry.npmmirror.com/
  • npm config set registry https://registry.npmjs.org
    官方源
  • npm config get registry
    查看源,可以看到设置过的所有的源。(可以设置多个源,但是只有一个是生效的)

yarn

npm install -g yarn 安装Yarn

yarn init 创建package.json,yarn init --yes来跳过会话并使用默认值。
yarn add <packageName> 添加依赖,添加到devDependencies(开发依赖)--dev, 添加到peerDependencies或optionalDependencies等,使用--peer或--optional选项。
yarn upgrade <packageName> 升级依赖
yarn remove <packageName> 移除依赖
yarn install 安装package.json中的所有依赖,yarn install --force 强制重新安装所有依赖
yarn info <packageName> 查看某个包的详细信息,包括版本、依赖等
yarn cache list 列出缓存
yarn cache clean 清除缓存
yarn classpath 查看YARN的类路径

nvm

nvm install <version> [arch] :安装node, version是特定版本也可以是最新稳定版本latest。可选参数arch指定安装32位还是64位版本,默认是系统位数。可以添加--insecure绕过远程服务器的SSL。
nvm list [available] :显示已安装的列表。可选参数available,显示可安装的所有版本。list可简化为ls。
nvm use [version] [arch] :使用制定版本node。可指定32/64位。
nvm uninstall <version> :卸载指定版本node。
nvm on :开启node.js版本管理。
nvm off :关闭node.js版本管理。
nvm version :显示nvm版本。version可简化为v。
nvm proxy [url] :设置下载代理。不加可选参数url,显示当前代理。将url设置为none则移除代理。
nvm node_mirror [url] :设置node镜像。默认是https://nodejs.org/dist/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。
nvm npm_mirror [url] :设置npm镜像。https://github.com/npm/cli/archive/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。
nvm root [path] :设置存储不同版本node的目录。如果未设置,默认使用当前目录。
下载与详细文档:nvm中文网 (uihtm.com)

ssh

  • ssh-keygen
    可用来生成ssh公钥认证所需的公钥和私钥文件。使用 ssh-keygen 时,请先进入到 ~/.ssh 目录,不存在的话,请先创建。并且保证 ~/.ssh 以及所有父目录的权限不能大于 711;生成的文件名和文件位置:使用 ssh-kengen 会在~/.ssh/目录下生成两个文件,不指定文件名和密钥类型的时候,默认生成的两个文件是:id_rsa 私钥文件,id_rsa.pub 公钥文件。
    cat ~/.ssh/id_rsa.pub
    image.png

切换目录

  • cd.. 回到上一级目录
  • cd name(当前目录下的指定文件夹 进入指定目录)
  • dir 查看当前目录结构
  • tree: 树状结构查看当前目录的所有后代目录结构
  • cls (mac:clear):清屏
  • systeminfo:系统基本信息
  • ping 地址:查看链接信息
  • ipconfig(mac:ifconfig):查看网关信息
  • 输入指令$node回车 可在node 中输入js ,并执行
  • ipconfig 查询本机ip地址
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,376评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,126评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,966评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,432评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,519评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,792评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,933评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,701评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,143评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,488评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,626评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,292评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,896评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,742评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,324评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,494评论 2 348

推荐阅读更多精彩内容

  • 查看、添加、提交、删除、找回,重置修改文件 git help # 显示command的help git sho...
    Swiftor阅读 2,103评论 0 2
  • 配置 首先是配置帐号信息ssh -T git@github.com # 登陆 github 修改项目中的个人信息 ...
    guanguans阅读 724评论 0 3
  • git init  在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前...
    懿左左阅读 335评论 0 4
  • Git常用命令总结 git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个...
    曾基锟阅读 253评论 0 0
  • git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文...
    有可能_666阅读 212评论 0 0