Dol*_*ava 12 git version-control github
我的git版本是Git-1.9.4-preview20140611早些时候,我克隆了一个空的git源存储库.克隆了存储库,但有以下消息
警告:您似乎克隆了一个空存储库.检查连接...完成.
接下来,复制一个.gitIgnore文件,该文件位于另一个项目的主Git存储库中,并将其提交给本地主服务器.此文件之前已被我们使用过很多次.这似乎很好.我们为所有项目提供了标准化的.gitIgnore文件.这是最佳实践的一部分.
接下来创建了一个新分支,并在本地git repo所在的物理位置复制了一些代码
git checkout -b FromCC
Run Code Online (Sandbox Code Playgroud)
添加了代码并在此分支中提交.
git add --all
git commit -M "Blah"
Run Code Online (Sandbox Code Playgroud)
所有这些操作都是成功的.
我的目的是将这些更改最终合并到本地主分支中.
我接下来呢
git checkout master
Run Code Online (Sandbox Code Playgroud)
并得到以下消息.
您的分支基于'origin/master',但上游已经消失.(使用"git branch --unset-upstream"来修复)
这条消息是什么意思?为什么上游会"消失"?
有趣的观察:我今天使用相同的主Git存储库重复了相同的过程.这次Git存储库不是空的.它之前有.gitIgnore文件.这次前面提到的消息没有出现.
tor*_*rek 37
它不是上游存储库(origin
本身),而是您克隆的(master
在原点上)缺少的特定分支.
此外,git的消息具有误导性:master
原点上的分支并没有消失,它从未出现过.克隆空存储库时,它根本没有分支.它继续没有分支机构.因此,您master
设置为跟踪的本地origin/master
是跟踪一个确实存在(确实)不存在的分支.
该消息更适用于以下情况:
$ git clone ...
$ git checkout featureX # track some feature branch
[go away for a week, come back]
$ git fetch -p # update remote branches
Run Code Online (Sandbox Code Playgroud)
在那个星期你离开的地方,featureX
分支被删除了(大概是合并到它的开发线上,然后不再需要).此时,您正在本地分支上,featureX
设置为跟踪远程分支origin/featureX
,但现在已经没有origin/featureX
了.
在这种情况下,虽然,你有地方分支master
跟踪origin/master
时,有没有origin/master
还.一旦你创建它(通过使存储库非空的推送),问题就会消失.这种情况的出现只是因为默认情况下,master
即使遥控器是空的并且实际上还master
没有遥控器,你也会开始.
归档时间: |
|
查看次数: |
20366 次 |
最近记录: |