git学习

栏目: 编程工具 · 发布时间: 6年前

内容简介:这样在我们每次想push或者pull的时候,只需要 输入git push 或者git pull即可。在此之前,我们必须要指定想要push或者pull的远程分支。git push origin master

git学习

git学习

git学习

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

git学习

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

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

git branch --set-upstream master origin/master

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

git学习

git学习

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

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

git push --set-upstream origin master

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

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

git push origin master

git pull origin master.

不然报错

git学习

git学习

git pull时遇到

fatal: refusing to merge unrelated histories

git学习

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

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

git pull origin api-dev  --allow-unrelated-histories

git学习

这样就可以把远程该分支的代码下载到本地了

git branch -vv 可查看本地分支和远程分支的对应关系

git学习

git学习

根本原因在于本地分支 github 是从远程分支develop拉取的,在执行git push命令时,不知道应该与远程哪个分支进行同步,就会出现上面那个错误

提示了两种解决方法

git push github-origin HEAD:develop

这种是将当前分支推送到github-origin仓库的develop分支

git学习

或者

git push github-origin HEAD

这种是将当前分支推送到远程的同名分支,没有就会创建

git学习

git rebase变基

git学习

设置已有的本地分支跟踪一个刚刚拉取下来的远程分支,或者想要修改正在跟踪的上游分支,你可以在任意时间使用 -u 或 --set-upstream-to 选项运行 git branch 来显式地设置。

git学习

git学习

可以运行 git merge origin/serverfix 将这些工作合并到当前所在的分支。 如果想要在自己的 serverfix 分支上工作,可以将其建立在远程跟踪分支之上:

有时当初次git push不能参数时会提示这个

git学习

原因是本地的分支跟远程的分支名字不一样
git push origin HEAD:develop 的意思是将当前分支推送到origin的develop分支
    git push origin HEAD  的意思是将当前分支推送到origin仓库与本地当前分支的同名分支,没有就会新建

#### 删除远程分支

git branch -r -d origin/github 只是删除了fetch或pull下来的上游追踪

git学习

远程删除 git push <主机名> :<远程分支名>或git push <主机名> --delete <远程分支名>

git学习

有一种情况,就是不管是否存在对应的远程分支,将本地的所有分支都推送到远程主机,这时需要使用–all选项。

$ git push --all origin

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

$ git push --force origin

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

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

git fetch origin develop:branch2

git学习

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

详见这里

个人网站


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Visual Thinking

Visual Thinking

Colin Ware / Morgan Kaufmann / 2008-4-18 / USD 49.95

Increasingly, designers need to present information in ways that aid their audiences thinking process. Fortunately, results from the relatively new science of human visual perception provide valuable ......一起来看看 《Visual Thinking》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具