我可以在本地存储库中看到两个远程分支:
$ git branch -a
remote/origin/master
remote/origin/feature1
我的远程存储库中实际上有四个分支。如何将第三或第四分支结帐到本地?
我通过搜索Internet尝试了许多命令,但没有一个对我有用。 我没问题,但是可以从远程到本地获取master和feature1分支上的更新。
答案 0 :(得分:0)
您的本地存储库在来源方面可能已过时。要赶上,运行
git fetch
现在您应该看到其他分支。如果这些分支之一被命名为feature2
,则运行
git checkout -b feature2 origin/feature2
,或者使用最新的git,
git checkout feature2
将结帐分支并设置跟踪,以防您与其他开发人员合作。
答案 1 :(得分:0)
好的, 我的本地git repo的 config 文件中包含以下内容
[remote "origin"]
url = <url>
fetch = +refs/heads/feature1:refs/remotes/origin/feature1
fetch = +refs/heads/master:refs/remotes/origin/master
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "feature1"]
remote = origin
merge = refs/heads/feature1
rebase = false
将远程分支feature2
添加到[remote "origin"]
部分后,
[remote "origin"]
url = <url>
fetch = +refs/heads/feature1:refs/remotes/origin/feature1
fetch = +refs/heads/master:refs/remotes/origin/master
fetch = +refs/heads/feature2:refs/remotes/origin/feature2
然后运行
git fetch --all
git branch -a
我在输出中看到远程feature2
分支。
我现在可以结帐feature2
。
还有一个问题,我该如何将本地git repo的分支信息与远程repo同步,而不必手动修改config
文件?
答案 2 :(得分:0)
此:
let urlString = "myMp3FileURL" let serverURL = NSURL(string: urlString)! if let asset = AVAsset.assetWithURL(serverURL) as? AVAsset { let metaData = asset.metaData() //Getting empty list }
是问题的根源。在这里,您已指示您的 Git,无论[remote "origin"]
url = <url>
fetch = +refs/heads/feature1:refs/remotes/origin/feature1
fetch = +refs/heads/master:refs/remotes/origin/master
上Git中存在什么分支,您都希望您的 Git接受并记住 origin
和feature1
,您将分别称为master
和origin/feature1
。
origin/master
的默认标准fetch
设置为:
origin
如果您具有此设置,则所有内容都会自动运行。
(然后问题就变成了:为什么您似乎想要行为由 提供标准默认设置,为什么您停止使用标准默认设置呢?编辑:,显然答案是:您没有,Eclipse / EGit做到了。)