前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >git远程从入门到放弃

git远程从入门到放弃

原创
作者头像
道可道非常道
修改2019-05-06 10:42:31
5880
修改2019-05-06 10:42:31
举报
文章被收录于专栏:Java Web学习

git pull下来用git branch -r查看远程分支才有数据

解决方案:指定当前工作目录工作分支,跟远程的仓库,分支之间的链接关系。

比如我们设置master对应远程仓库的master分支

git branch --set-upstream master origin/master

git branch查看本地分支,git branch -r 查看远程分支

具体原因: 出现这种情况主要是由于远程仓库太多,且分支较多。在默认情况下,git push时一般会上传到origin下的master分支上,然而当repository和branch过多,而又没有设置关联时,git就会产生疑问,因为它无法判断你的push目标。

用如下命令进行本地分支和远程分支进行关联

代码语言:txt
复制
git push --set-upstream origin master

这样在我们每次想push或者pull的时候,只需要 输入git push 或者git pull即可。

在此之前,我们必须要指定想要push或者pull的远程分支。

git push origin master

git pull origin master.

不然报错

git pull时遇到

fatal: refusing to merge unrelated histories

我们在初见一个git仓库需要将之提交到远程仓库时,使用git pull origin master 命令操作时,会遇到这样的错误:fatal: refusing to merge unrelated histories

这是因为远程仓库已经存在代码记录了,并且那部分代码没有和本地仓库进行关联,我们可以使用如下操作允许pull未关联的远程仓库旧代码:

代码语言:txt
复制
 git pull origin api-dev  --allow-unrelated-histories

$ git push --all origin

代码语言:txt
复制
上面命令表示,将所有本地分支都推送到origin主机。如果远程主机的版本比本地版本更新,推送时Git会报错,要求先在本地做git pull合并差异,然后再推送到远程主机。这时,如果你一定要推送,可以使用–force选项。

$ git push --force origin

代码语言:txt
复制
上面命令使用-–force选项,结果导致在远程主机产生一个”非直进式”的合并(non-fast-forward merge)。除非你很确定要这样做,否则应该尽量避免使用–-force选项。

>git fetch <主机名> <远程分支> : <本地分支>

git fetch origin develop:branch2

代码语言:txt
复制

意思是把origin主机的develop分支的数据下载到本地分支branch2(没有branch2就新建)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档