遇到问题

当我们在本地仓库关联远程github的时候可能会遇到如下问题,提供一些解决方法供大家选择解决问题,使得本地关联远程仓库成功
image.png

有如下几种解决方法:

  1. 1push前先将远程repository修改pull下来
  2. $ git pull origin master
  3. $ git push -u origin master
  4. 2、使用强制push的方法:
  5. $ git push -u origin master -f
  6. 这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。
  7. 3、若不想merge远程和本地修改,可以先创建新的分支:
  8. $ git branch [name]
  9. 然后push
  10. $ git push -u origin [name]

在解决问题中遇到的几个问题

  1. 1git pull 提示refusing to merge unrelated histories
  2. 是因为两端在做完全不同的提交
  3. 解决方法:git pull --allow-unrelated-histories
  4. 2git pull 报错:There is no tracking information for the current branch
  5. ![image.png](https://cdn.nlark.com/yuque/0/2019/png/377874/1570846832524-141adaf7-2b81-4ab8-8638-1bcfe749181a.png#align=left&display=inline&height=118&name=image.png&originHeight=90&originWidth=468&size=42595&status=done&width=614)
  6. 是因为本地分支和远程分支没有建立联系 (使用git branch -vv 可以查看本地分支和远程分支的关联关系) .根据命令行提示只需要执行以下命令即可
  7. 解决方法:
  8. 一种是直接指定远程mastergit pull origin master
  9. 另外一种方法就是先指定本地master到远程的master,然后再去pull
  10. git branch --set-upstream-to=origin/远程分支的名字 本地分支的名字
  11. git pull
  12. 3git push 报错GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.<br /> ![image.png](https://cdn.nlark.com/yuque/0/2019/png/377874/1570846911188-6bb60008-235d-43aa-bd3a-b2eb1c39f7dc.png#align=left&display=inline&height=218&name=image.png&originHeight=255&originWidth=870&size=203628&status=done&width=746)<br /> 是因为GitHub限制单个文件大小不能超过100M
  13. 解决方法:
  14. a、初始化Git LFS,任何位置运行一次“git lfs init”进行初始化和安装git-lfs.
  15. 初始化成功后就可以用了. 如果没有安装好, 会显示:
  16. ![image.png](https://cdn.nlark.com/yuque/0/2019/png/377874/1570846978136-229931a8-9bce-41c1-a9a7-6041d0bed0f4.png#align=left&display=inline&height=126&name=image.png&originHeight=89&originWidth=426&size=41310&status=done&width=595)
  17. 可以通过使用 Homebrew 执行“brew install git-lfs”来安装,安装完成后,你还需要执行“git lfs install”命令
  18. b、注册文件到LFS,例如要注册tar.gz文件, 可以git lfs track "*.tar.gz",此时将追踪相应文件后缀名符合的文件,要是想只是添加某些文件,指定文件就好了,追踪成功后会生成一个.gitattributes文件,里面有LFS管理的文件类型信息。<br /> ![image.png](https://cdn.nlark.com/yuque/0/2019/png/377874/1570847007910-a38ad3d7-2665-4798-b384-4134a89220f4.png#align=left&display=inline&height=167&name=image.png&originHeight=128&originWidth=461&size=36233&status=done&width=603)<br />
  19. c、随后就是一般的提交到githubgit add git commit -m "comment";;git push origin master;所有修改都提交也可以。
  20. d 注:正常情况下,就能成功提交上去不报错了, 要是报错了,很有可能是你的大文件之前commit到本地库了,push时还是按之前的方式来提交到github所以报错;解决办法是撤销上一次commit后,进行再次push.