我是Git和GitHub的新手,所以请耐心等待。 我在GitHub上有一个空的存储库,它有一个自动创建的分支(gh-pages),据我所知,它应该与GitHub的页面功能一起使用。
现在我想做的是创建和eclipse项目,我可以从中提交/推送到此存储库。
令我困惑的是,我看不到在github上创建远程分支的任何选项。我想把我的源码推到gh-pages不是一个好主意。顺便说一句,我也不明白为什么GitHub页面的功能被实现为分支?在某些时候,不应该将分支彼此合并。显然,将github页面合并到我的项目中没有任何意义。为此目的在我的项目中有一个文件夹不是更好吗。
我用Google搜索并找到了这个link但是作为一个git noob我不确定这是不是我想要做的。我想使用Eclipse作为git和github的主要接口,只有在没有其他选项时才会回退到命令行或其他接口。
好吧,我想我已经弄明白了。基本上,您需要的是定义一个不需要事先存在的远程引用。
或者可能是两边的refs / heads / master都不是个好主意:) 我看到,克隆一个没有gh-pages分支的github仓库比较简单,因为它会自动创建这个远程提取规范
远程抓取规范+refs/heads/*:refs/remotes/origin/*
也许这就是我需要在上面的第6步中输入的内容
好的,因为事实证明“本地和远程分支中的refs / heads / master”的原始想法是正确的。使用此配置推送正确显示我在git hub中的更改。另一方面,第二种选择是默默地失败。
答案 0 :(得分:4)
分支通常以您描述的方式使用,但没有任何内容表示必须以这种方式使用。这就是github选择让您管理页面内容的方式,而且效果非常好。它类似于在一个SVN服务器上托管多个存储库。
至于创建新的repos,如果你在github中创建一个repo然后克隆它,你将在本地有一个空的repo,它已经指向带有一个名为“origin”的远程的github。这是一种开始的便捷方式,因为您不必自己添加遥控器。此时,您的repo没有提交,也没有分支。当您进行第一次提交时,它将自动建立一个名为“master”的分支。我不知道默认情况下是如何设置eclipse的,但是从默认设置的命令行中,你必须明确地将新分支推送到远程,否则它们根本不会被推送。即进行第一次提交并执行git push
只会失败,并显示“没有共同的参考,没有指定;什么都不做”的消息。相反,你必须git push origin master
告诉它在远程“origin”(又名github)中建立“master”分支。此后,只需git push
即可。
希望能够解决你的一些困惑。