最近自己写了一个学习项目(从git上下的xmall),想上传到git上,于是自己建了一个仓库来操作.平时都是用idea
add,commit,push,pull操作,还是第一次完整操作一边git,也是遇到一些问题记录下来.
步骤:
1.在github上创建自己的仓库
2.在本地idea上找到vcs,选择import into version control -> create git repository,在当前项目目录下创建gir文件夹,然后将本地上木add和commit到本地仓库
3.需要将本地仓库和远程仓库(刚刚在github上创建的仓库)关联起来
在idea下方打开terminal
输入命令
git remote add origin <线上仓库url>
线上仓库url 为如下链接
https://github.com/wenhaofan/xxx.git
关联好之后可以push,将代码推送到远程仓库.
然后我就遇到一下错误了:
这个问题经常能看到,其实是因为远程仓库的历史版本和本地仓库代码有不符的地方,拿我刚创建的远程仓库来说,在我创建的时候创建了一个readme文件,而我本地是没有readme文件的,因此我在push的时候会发生冲突.
我是直接强制推送解决的
命令: $ git push -u origin master -f
不建议大家这么操作,这样会覆盖掉远程仓库的版本,我是因为知道我的远程仓库只有一个空的readme文件,为了图方便,若远程仓库有比较重要的代码,千万不要覆盖
从网上看到其他几个解决方案供大家参考
push前先将远程repository修改pull下来
$ git pull origin master
$ git push -u origin master
若不想merge远程和本地修改,可以先创建新的分支:
$ git branch [name]
然后push
$ git push -u origin [name]