第一次上传项目

先在本地初始化git仓库

1
git init  //在项目文件夹进行

将本地文件全部添加到仓库

1
git add *

将文件提交到仓库

1
git commit -m "first commit"

在github建立一个仓库

要注意仓库默认分支现在都为main,而git上都为master,所以把地址仓库名替换为main

1
git branch -m master main

本地与远程仓库建立连接

1
git remote add origin "项目地址.git"

最后推送项目

1
git push -u origin main

在这一步遇到两个问题:

**1.git错误 **

error: failed to push some refs to https://github.com/

问题原因:远程库与本地库不一致造成的,在hint中也有提示把远程库同步到本地库就可以了。

解决办法:使用命令行:

1
git pull --rebase origin main

该命令的意思是把远程库中的更新合并到(pull=fetch+merge)本地库中,–-rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。出现如下图执行pull执行成功后,可以成功执行git push origin master操作。

**2.git错误 **

pull –rebase origin main error: cannot pull with rebase: You have unstaged changes. error: please commit or stash them.

在执行

1
git pull --rebase origin main

时出现错误

1
git status //查看修改

发现有修改的文件未提交,这时就要添加修改到仓库并提交

1
2
git add -A
git commit -m "第二次提交"

这时再推送到远程仓库就没有问题。

3.git删除已上传的node_modules文件

按顺序执行以下命令:

1
2
3
git rm -r --cached node_modules
git commit -m 'delete node_modules file'
git push origin master

.gitignore文件配置,使后面的操作不会将node_modules提交到git仓库。

1
2
3
4
5
// .gitignore文件* 

node_modules/

dist/

总结

1.git pull –rebase 理解

这个命令做了以下内容:
a.把你 commit 到本地仓库的内容,取出来放到暂存区(stash)(这时你的工作区是干净的)
b.然后从远端拉取代码到本地,由于工作区是干净的,所以不会有冲突
c.从暂存区把你之前提交的内容取出来,跟拉下来的代码合并

所以 rebase 在拉代码前要确保你本地工作区是干净的,如果你本地修改的内容没完全 commit 或者 stash,就会 rebase 失败。