Visual Studio 2017 - 无法将已提交的更改推送到本地存储库

时间:2018-06-06 11:39:31

标签: git visual-studio-2017

我在Win 10 Enterprise上运行VS 2017 Enterprise(15.7.3)。我在我的本地硬盘上有一个git存储库,我已经做了一些更改,现在希望使用VS来提交和推送"这些更改到我们的中央存储库,它位于我们的一个网络文件共享上。

我得到的错误信息是:

Error encountered while pushing to the remote repository: Git failed with a fatal error.
Could not read from remote repository.

Please make sure you have the correct access rights and the repository 
exists.

a)这对我有用了一段时间,直到昨天。据我所知,我的机器没有更新或其他更改。

b)当我从命令行使用git时,我能够将这些更改推送到我们的中央存储库,VS同步窗口反映了这一事实(不再有传出提交。)

 git status before using command line to push:
     On branch master
          Your branch is ahead of 'origin/master' by 2 commits.
          (use "git push" to publish your local commits)
          nothing to commit, working tree clean
 git status after using command line to push:
     On branch master
     Your branch is up to date with 'origin/master'.
     nothing to commit, working tree clean

c)使用VS安装程序,我试图卸载(重新启动)/重新安装(重新启动)" Git for Windows"无济于事。

到目前为止,我能找到的所有内容都是针对使用GitHub的问题而不是我的情况。

4 个答案:

答案 0 :(得分:0)

听起来像github的凭据配置中的问题,我建议您使用以下命令继续使用终端并存储您的凭据:

Private Sub FillComboBox()
    SQL.ExecQuery($"select ID, Name, RTRIM(ID + ' | ' + Name) as SingleColumn from GCCTEST.dbo.tblFruit")
    ComboBox2.DataSource = SQL.DBDT
    ComboBox2.DisplayMember = "ID" 
    ComboBox2.ValueMember = "ID"
End Sub

Private Sub ComboBox2_DropDown(sender As Object, e As EventArgs) Handles ComboBox2.DropDown
    Me.ComboBox2.DisplayMember = "SingleColumn"
End Sub

Private Sub ComboBox2_SelectionChangeCommitted(sender As Object, e As EventArgs) Handles ComboBox2.SelectionChangeCommitted
    Dim selV As Object = Me.ComboBox2.SelectedValue

    Me.TextBox2.Text = CStr(selV)
    Me.ComboBox2.DisplayMember = "ID"

    'Set the current value again, otherwise the combobox will always display the first item
    Me.ComboBox2.SelectedValue = selV
End Sub

答案 1 :(得分:0)

这不是一个真正的回答"但是在这个问题上我还没有通过评论做出贡献。上周五下午我也开始了同样的问题。我已将所有内容更新到当前版本(VS2017 - 15.7.3,所有插件,扩展和Git for Windows;在Windows 7上运行)。命令行推送到远程工作为@DataBeagle表示并跟随VS2017中显示的计数和状态正确反映推送发生。

凭据不是问题,因为我们没有使用Git Hub,只推送内部网络共享上的远程仓库。

答案 2 :(得分:0)

我的VS2017版本是15.7.4,发现了相同的问题,并最终设法解决了该问题。 解决方案最初在这里找到: https://developercommunity.visualstudio.com/content/problem/19752/git-cant-clone-remote-repository.html

打开以下文件位置并删除其内容:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git

打开 vs2017安装程序(通过安装程序.exe文件或打开vs2017,单击菜单工具-获取工具和功能... ),转到“单独项目”标签,取消选中“ Windows版Git”,然后单击“修改”。 然后,通过选中“ Git for Windows”将其重新激活,然后单击“修改”。

答案 3 :(得分:0)

通过更改 Windows 设置中的凭据,上述问题已为我解决。 转到控制面板 --> 用户帐户 --> 凭据管理器

在凭据管理器中,您将看到 vscodevscode.github.xxx 并使用您的用户名和 GitHub 令牌对其进行编辑并保存它,然后再次尝试执行所有操作,希望这会解决问题。

对于 Github 访问令牌: 转到 Github Setting ---> Developer setting ---> Personal Access Token ---> Generate New Token ---> Note (Name something) 并勾选 (repo, admin: org and gist) 然后点击 Generate token。

现在只需在 vscodevscode.github.xxx 中使用用户名复制并粘贴此令牌。