git push --set-upstream_【git】- 将本地项目关联到github远程仓库

76f6f16b2a31ffcf5c7925e8e8a70a94.png

前言:

c313fc86c69a0821fc7bc78b42462e49.png

对于git新手来说,遇到各种坑,都是对原理的不理解导致的。学习git,理解+使用。

浅析 Git 思想和工作原理​www.jianshu.com
686b8a4e620c380d764d0232d9da6703.png
图解Git​marklodato.github.io
04501163986ad5df82355da170151117.png

这里介绍2种方式来实现:

  • 操作比较繁琐但易操作的方式:
    • 在github上新建个项目
    • 复制仓库地址,通过git clone (项目地址),复制到你存放项目的位置。
    • 将原先的本地项目拷贝过来(node_modules不要拷贝,太大了)
    • 然后就是正常的git操作了:git add .(添加所有文件到暂存区) => git commit -m "first commit"(commit提交代码) => git push origin master

3b854f9b20472a76ec3cd705a53fb445.png
  • 正常的关联方式:
    • 在github上新建个项目(这里不同的创建步骤会涉及到最后不能push问题 - 是否是创建一个空的仓库)
  1. (创建空仓库)不勾选README, license, gitignore选项创建的仓库,长下面那样。

6d1dbed9524c559b71ed302ca877585e.png
未勾选任何选项 - 空的仓库

e82c30f7e9f90ab62c7d856488cdf5a7.png

https://pic1.zhimg.com/v2-57f883eba362ba25542d58ac83703178_b.jpg

46048da8d0dc507a940265528d4f0543.png
创建后的空仓库样子 - 有提醒如何管理远程仓库的操作

2.(创建非空仓库)勾选README, license, gitignore任意选项

da77aea060c5364ff0c66d0011b2351a.png
非空仓库 - 勾选了license,并有一个commit提交

  • (空仓库)创建完空仓库就将本地项目关联到远程
  1. 如果本地项目已经通过git管理:直接通过git remote add origin (仓库地址) 关联 => git push -u origin master 推送代码上去,就完事了。
  2. 本地项目未通过git管理:git init(将项目通过git初始化) => git add .(添加所有修改到暂存区) => git commit -m "first commit remark"(提交commit) => git remote add origin (仓库地址) => git push -u origin master(推送到远程github)
  • (非空仓库)创建完非空仓库就将本地项目关联到远程
  1. 远程非空仓库的关联,就要涉及到2个不同项目的关联了;得先将远程的代码合并下来,才能提交;我们先假设项目已经通过git管理了。缺少关联push远程仓库的步骤讲:
    1. 关联远程仓库:git remote add origin (仓库地址)
    2. git pull origin master --allow-unrelated-histories(意思是2个不同项目的没关联提交允许拉取合并)
    3. git push origin master(push成功,完工...)

注意:

针对非空仓库的关联:可能有同学会问为什么不直接git pull origin master呢?是可以的,但是2个不同项目的不同提交记录并没有关联,最后git push origin master是不会成功的。提醒如下图:

ce35a05c91f90c0798d8c798f3e54adf.png
非空仓库的关联,pull是可以成功的,但是push是不行

e76416a8cf6ec27d1e8fca79cac81faf.png
push不成功 - 这时候先通过git pull origin master --allow-unrelated-histories拉取下,再push

722b3f4ab9beb07da963575d337b5d2b.png

出现(non-fast-forward)的根本原因是repository已经存在项目且不是你本人提交(但是git只认地址),你commit的项目和远程repository不一样。

19f78133ce19f84446d5a7f57cef447e.png
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值