无法在Intellij的git remote中推送代码

时间:2016-12-20 09:08:11

标签: git intellij-idea

我想从Intellij的git remote中推送代码。 堆栈跟踪是:

13:17:57.195: [..\..\uiautomation] git -c core.quotepath=false push --progress --porcelain origin refs/heads/v16.2rc_Local:v16.2rc --force --follow-tags
Counting objects: 12, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (12/12), 993 bytes | 0 bytes/s, done.
Total 12 (delta 6), reused 0 (delta 0)
To ssh://raj@localhost:29418/platform/test/uiautomation
!   refs/heads/v16.2rc_Local:refs/heads/v16.2rc [remote rejected] (prohibited by Gerrit)
remote: Resolving deltas: 100% (6/6)        
remote: Branch refs/heads/v16.2rc:        
remote: You are not allowed to perform this operation.        
remote: To push into this reference you need 'Push' rights.        
remote: User: raj        
remote: Please read the documentation and contact an administrator        
remote: if you feel the configuration is incorrect        
remote: Processing changes: refs: 1, done            
error: failed to push some refs to 'ssh://raj@localhost:29418/platform/test/uiautomation'

当我从cmd推送

时工作正常

2 个答案:

答案 0 :(得分:1)

如何在GitHub中生成ssh密钥

  1. 从管理员打开cmd。
  2. 键入ssh-keygen,然后按Enter键
  3. 输入要在其中保存密钥的文件(C:\ Users \ asus / .ssh / id_rsa):按Enter键或(在此处键入要保存文件的文件路径)。
  4. 输入密码:无需按Enter键即可输入任何内容
  5. 再次输入相同的密码:无需按Enter键即可输入任何内容
  6. 您的标识已保存在C:\ Users \ asus / .ssh / id_rsa中。
  7. 您的公钥已保存在C:\ Users \ asus / .ssh / id_rsa.pub中。
  8. 关键指纹是:
  9. 密钥的randomart图片是:
  10. + --- [RSA 2048] ---- +
  11. | 。= ... |
  12. | 。 o * o。 |
  13. | + = o。 |
  14. | + o =。 。 |
  15. | 。操作系统。 .. |
  16. | +。 = o。+ ..E |
  17. | + = oo * ... o。|
  18. | 。 = ++ o。 .o。 |
  19. | + oo .o..oo |
  20. + ---- [SHA256] ----- +
  21. C:\ Windows \ system32>
  22. 之后关闭cmd并转到此处C:\ Users \ asus / .ssh / id_rsa.pub。打开文件并复制文本。
  23. 在Windows包含OpenSSH之前,PuTTY工具是生成SSH密钥的黄金标准。 步骤1:安装PuTTY
  24. 浏览到开发者页面,然后下载PuTTY的安装程序: •

    https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
  25. 双击下载的文件,然后按照安装向导完成安装。 •

    •在安装向导的初始对话框中,单击“下一步”。 •选择目标文件夹。除非有特殊需要,否则请使用默认安装配置。单击“下一步”转到下一个屏幕。



•选择要安装的PuTTY产品功能。如果您没有任何特定需求,请遵循默认值。单击“下一步”转到下一个屏幕。



•该过程完成后,单击“完成”退出安装向导。 步骤2:运行PuTTY SSH密钥生成器

  1. 按Windows键。

  2. 键入腻子。

  3. 在“最佳匹配”下,右键单击PuTTYgen。

  4. 单击以管理员身份运行。

  5. 如果出现提示,请在“是否要允许此应用程序对设备进行更改?”上单击“是”。弹出。 步骤3:使用PuTTY创建一对SSH密钥 下面概述的过程将生成RSA密钥,这是一种经典且广泛使用的加密算法。 PuTTY Keygen工具提供了其他几种算法-DSA,ECDSA,Ed25519和SSH-1(RSA)。 如果需要其他加密算法,请在生成密钥对之前在“参数”标题下选择所需的选项。

  6. 在“ PuTTY密钥生成器”窗口中,单击“生成”。

  7. 在灰色框中移动光标以填充绿色条。

  8. 保存公钥: •

    •单击标记为保存公共密钥的按钮。 •选择一个保存密钥的位置。 •为密钥命名(例如putty_key.pub) •

  9. 保存私钥:

点击顶部的转化菜单。 单击导出OpenSSH密钥。 系统会询问您是否要保存不带密码的密钥。单击是。 选择一个保存密钥的位置(通常与公用密钥相同的文件夹)。 为密钥命名(例如,putty_key)。 使用SSH密钥复制ssh密钥并转到GitHub。 打开github帐户的设置,然后转到SSH和GPG密钥 按添加键按钮,然后将键粘贴到“描述”框中。并命名标题。 enter image description here

答案 1 :(得分:0)

首先尝试Cleaning out the system caches

然后,如果错误仍然存​​在,请检查并删除项目子文件夹中的.git文件夹。项目的根目录中只能有一个.git文件夹。