2013-01-10 158 views
2

我更改了子模块中的代码,并希望与其他团队成员共享。
(哇git的子模块是硬)git子模块推?

> cd to submodule 
> git add/commit 
> git push prompts me Username: and Password: 
> Username: 
> Password: 
> error: The requested URL returned error: 403 while accessing 
> https://github.com/hovel/pybbm.git/info/refs 

我读得push其他人之前的变化可以做git submodule update看到的变化。
我想我推动它到一些本地回购?为什么错误显示我github(原始回购),我该如何解决它?

回答

0

检查你的git版本。如果您不使用git 1.7.10或更高版本,您可以在https://help.github.com/articles/https-cloning-errors中看到Github使用https显示错误。

+0

mine是1.7.2.5和apt-get install git/git-core说它是最新版本 – eugene

+0

你可以下载git源代码并编译它,或者使用ssh协议而不是https协议。最后,您需要将.git/config文件中的url更改为表示github中git协议的url。 –

1

我要推的变化先于其他人能做到的混帐子模块更新查看更改

你必须:

  • 推辅助模块中所做的更改
  • 返回父级回购,提交和推送中的一级

当其他人在做git子模块更新时,他们通过包含每个子模块的引用(地址和SHA1)的相同父回购的克隆来完成它。
如果您还没有推动记录中记录的那些special entries,则即使您已从子模块中推送修改,也不可能进行更新。

子模块是一个git repo的克隆:你从https://github.com/hovel/pybbm.git中克隆了它,这是一个你无权推回的子地址(子模块与否)。
您需要fork that repo first,并将该分支用作子模块url。

0

该子模块是您自己的吗?当您尝试推送到别人的存储库时,您可能会收到403错误。如果您想更新基于某人工作的子模块,则应该为该项目创建一个分支,然后使用该分支作为子模块。