背景
本文记录一下本地的git仓库如何与远程仓库同步,参考了网友的办法和官方的文档
如果对某些命令有疑惑,可以在命令行输入 git {command} --help 查看git的文档,例如 git remote --help ,会打开本地的帮助文件
操作步骤
首先切到本地仓库所在路径,如果git还没有初始化,需要进行初始化
git init
remote命令关联远程仓库,"origin"是给远程仓库取的名字,url输入远程git仓库的http地址
git remote add origin <url>
从远程的master分支拉一次代码
git pull origin master
这一步可能会报错:refusing to merge unrelated histories,是因为远程和本地都有提交记录,需要在后面加一个 --allow-unrelated-histories ,完整命令如下
git pull origin master --allow-unrelated-histories
设置远程的master分支为本地master分支的上游分支,也就是把远程的master分支和本地的master分支关联起来
git branch --set-upstream-to=origin/master master
操作完以上步骤,其实就已经把分支关联完成了,接下来就可以提交本地代码到远程仓库啦,命令如下:
git add . git commit -m 'first commit' git push -u origin master
其他问题
合并完分支之后,可能会发现本地配置的.gitignore文件没有起作用,会导致提交一些不需要的文件到远程仓库,这时候需要从索引中删除路径,让它重新生效
git rm -r --cached .
操作完之后需要重新提交一次本地的所有文件
git add . git commit -m 'reset gitignore' git push -u origin master