git pull:当前分支没有跟踪信息

我一直在使用github,而且我一直使用客户端来执行提交和提交。 我决定尝试从git bash昨天,我成功地创build了一个新的回购和提交的文件。

今天,我做了从另一台计算机的存储库的变化,我已经承诺的变化,现在我回家,并执行git pull来更新我的本地版本,我得到这个:

 There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details git pull <remote> <branch> If you wish to set tracking information for this branch you can do so with: git branch --set-upstream develop origin/<branch> 

这个回购的唯一贡献是我,没有分支(只是一个主)。 我在窗户上,我已经从git bash执行拉:

在这里输入图像说明

git状态:

 $ git status # On branch master nothing to commit, working directory clean 

git分支:

 $ git branch * master 

我究竟做错了什么?

你可以指定你想要拉的分支:

 git pull origin master 

或者你可以设置它,让你的本地主分支作为上游跟踪github主分支:

 git branch --set-upstream-to=origin/master master git pull 

此分支跟踪是在克隆存储库时自动为您设置的(仅适用于默认分支),但如果将远程存储添加到现有存储库,则必须自行设置跟踪。 值得庆幸的是,git给出的build议使得记住如何做起来非常容易。

请参阅: git checkout标记,git pull在分支中失败

如果像我一样,你需要一直这样做,你可以通过在你的.gitconfig文件中添加以下内容来自动设置一个别名:

 [alias] set-upstream = !git branch --set-upstream-to=origin/`git symbolic-ref --short HEAD` 

当你看到消息There is no tracking information... ,只需运行git set-upstream ,然后git push

感谢https://zarino.co.uk/post/git-set-upstream/

我经常碰到这个确切的消息,因为我通过git checkout -b <feature-branch-name>创build了一个本地分支,而没有先创build远程分支。

在所有工作完成并在本地完成后,修复程序是创build远程分支的git push -u ,推送了我所有的工作,然后是合并请求URL。