假设我是user1
,我在http://github.com/user1
有一个Github帐户。当然,我会在本地设置git:
origin git@github.com:user1/repo.git (fetch)
origin git@github.com:user1/repo.git (push)
如果我有获取&将权限推送到其他人的仓库(比如user2
),其仓库位于http://github.com/user2/user2srepo.git
?
编辑:
对不起,大家都对他们的答案是正确的。我应该澄清一下,我曾经将它设置为origin http://github.com/user2/user2srepo.git
,但我想避免每次推送都要求用户凭据。
答案 0 :(得分:8)
假设您的github存储库都是相同的代码库,您可以将它们作为遥控器添加到本地存储库中:
git remote add otherusersorigin http://github.com/user2/user2srepo.git
然后在需要时使用该别名:
git fetch otherusersorigin
git push otherusersorigin
要在没有身份验证提示的情况下执行此操作,请根据标准GitHub说明为您自己设置SSH密钥,并让其他人将您添加为该仓库的协作者。
答案 1 :(得分:4)
事实证明它比我想象的容易。感谢@MattGibson和@eykanal在评论中的帮助,我意识到我可以按如下方式设置遥控器:
origin git@github.com:user2/user2srepo.git (fetch)
origin git@github.com:user2/user2srepo.git (push)
这里的区别在于用户设置为user2
而不是我自己的用户名。我错误地认为我需要输入user2
的凭据,但如果我在user2srepo
设置为合作者,则情况并非如此。
对于那些感兴趣的人,如果您已经拥有远程集,则设置此命令的命令如下:
git remote set-url origin git@github.com:user2/user2srepo.git
答案 2 :(得分:1)
如果您对该repo具有写权限,只需克隆该存储库并直接提交给它。您无需经历分叉过程。