需求:
现在需要写一个新项目,但是框架和页面结构都和服务器上的另一个项目类似,想要拷贝到本地直接重写业务代码,再推到服务器的一个新目录下。
步骤:
- 本地新建项目A文件夹project/,将git server类似项目B拷贝到里面。
git clone http:\\xxxx.git
或者
git clone -b 分支名 http:\\xxxx.git
- 将原有的
.git
文件夹删除,git init
新建版本库,git add .
将项目文件添加到仓库。
这样新项目就不会保留项目B的版本、修改、分支之类的,变成了一个完全重新开始的项目。 - 修改项目名字。拷贝下来的项目名称是B,需要改成A
- 重构项目A
- 在git server服务器建立新仓库A,会生成一条该库的地址,将本地项目A提交到远程项目A
git remote add origin 仓库A地址
将本地仓库和远程仓库A关联
git add .
git commit -m xx
提交代码
git push -u origin master
由于远程仓库是空的,第一次提交代码时,加上-u
,不仅将本地master
推送到远程新master
分支,还将两个分支关联起来。
问题 就出在第3步到第4步之间。当我将克隆下来的项目B名称改成A后,重新编译项目A gulp
,报错:
D:\project找不到gulp,但实际上已经安装过gulp。根据建议重新npm install
,继续报错:
显示没有权限操作该项目。
查找资料后,运行Windows PowerShell(管理员),进入项目目录,执行npm install
,依然没有权限,删除项目node_modules目录,重新install,成功。
该问题原理未知,据说是和npm编译有关,哪位朋友知道的话欢迎交流。