javascript

java

python

c#

android

c++

node.js

php

html

jquery

ios

reactjs

css

.net

git

ruby-on-rails

sql

c

ruby

string

如何解决“ git pull,致命:无法访问'[https://github.com ... \':]来自服务器的空回复”

当我使用Git命令“ git pull”更新存储库时,失败,消息如下:致命:无法访问“ ...”:来自服务器的空回复。

而且我尝试使用GitHub App,但请注意以下几点:

Cloning into 'renren_mobile'...
warning: templates not found /Applications/GitHub.app/Contents/Resources/git/templates
2014-11-23 13:58:57.975 GitHub for Mac Login[659:11891] AskPass with arguments: (
    "/Applications/GitHub.app/Contents/MacOS/GitHub for Mac Login",
    "Username for 'https://github.com': "
)
2014-11-23 13:58:58.032 GitHub for Mac Login[660:11915] AskPass with arguments: (
    "/Applications/GitHub.app/Contents/MacOS/GitHub for Mac Login",
    "Password for '': "
)
fatal: unable to access '...': Empty reply from server
 (128)
trans by 2020-02-18T21:45:41Z

github-Git push master致命:您当前不在分支机构

主人说的是第10次提交。 但是,我最终意识到我在测试中遇到了一些无法解决的问题。

我最终提交了#5,然后慢慢地重新调整了每个提交的开发人员,并不断对其进行了调整,以确保它不会引起该错误。 现在,我实质上已经回到了提交#10的位置,但是进行了许多更改以防止该bug发生。

现在,我想使用我的更改来创建提交#11。 但是当我尝试推动掌握时

fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
state now, use

    git push master HEAD:<name-of-remote-branch>

这是可以预期的。 但是,实际上我该如何将其推送到我的远程分支?

我尝试了git status,但是得到了:

! [rejected]        HEAD -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/tomhammond/sample.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

当我执行git status时,我看到HEAD detached from 4a74ac3

trans by 2020-02-18T19:03:15Z

为所有子文件夹设置git config值

我知道可以设置覆盖用户级配置的每个存储库配置(即.gitconfig_override覆盖childFolder1)。 是否可以设置git configs来覆盖给定文件夹的所有子文件夹的用户级设置? 即,我有

|--topLevelFolder1
|--\
|   ---.gitconfig_override
|--\
|   ---childFolder1
|       \---[...]
|--\
|   ---childFolder2
|       \---[...]

我希望在childFolder1childFolder2中应用在.gitconfig_override中定义的设置。

我这样做的动机如下:我有一台笔记本电脑,业余时间还可以用于个人项目。 我所有的工作代码都嵌套在一个文件夹中。 当我推动工作git repos时,我需要使用我的工作角色-工作登录名(而不是姓名)和工作电子邮件。 当我推送到自己的个人(github)存储库时,我想使用我的真实姓名和个人电子邮件。

我想到的其他可能的解决方案(和问题):

  • 为“工作”和“娱乐”创建单独的用户,适当设置他们的用户级别设置,并在切换上下文时以适当的用户身份登录(麻烦,再加上我很容易忘记切换)
  • 创建一个脚本,在“ workFolder”中搜索git仓库,并添加/更新其.gitconfig文件以保存适当的详细信息(如果我创建了一个仓库并且忘记在推送之前运行该脚本,那么我将以错误的身份推送)
  • “ hack” git,这样每次创建一个repo时,它都会检查文件路径,并在适当的情况下更新.gitconfig文件(复杂,混乱且几乎可以肯定是错误的方法,而且我也不会 首要线索是怎么做!)

我检查了这个问题,该问题似乎仅包含单个存储库的解决方案,而不是多个存储库。 希望有人会错过这个问题!

trans by 2020-02-18T13:44:29Z

如何使git merge处理对我的工作树的未提交的更改?

我和一位同事目前都在master分支上工作。 我的工作树中有一些我不想提交的代码(调试语句等)。 现在,如果他将更改提交到某些相同的文件中,那么我将无法合并它们:

$ git merge origin/master
Updating 1b8c5c6..eb44c23
error: Entry 'blah.java' not uptodate. Cannot merge.

来自Subversion的背景,当我从存储库中提取更改时,我习惯于自动合并工作树;如果存在冲突,我会手动解决它们。

我发现在git中执行此操作的最快方法是:

$ git stash
$ git merge origin/master
$ git stash pop

本质上,删除我未提交的更改,进行合并,然后重新应用更改。 我怎样才能告诉merge自动将我的工作树与我尝试引入的更改合并?

trans by 2020-02-18T08:43:33Z

如何获取git存储库中所有文件的计数?

您将如何获得git存储库中当前所有文件的计数?

trans by 2020-02-18T05:44:04Z

工作流程-git push和git pull有什么区别?

我只是偶然发现了今天一些奇怪的东西。 我在暑期工作中请一位同事帮助我为我的代码设置一个新的远程git repo,关于他的工作和我想做的事情有很多困惑。 我要求他发送配置文件,以便能够查看到他的遥控器的路径,发现他没有遥控器。 当我问他这个问题时,他这样解释他的工作流程:

  1. 在本地更改某些内容
  2. 承诺
  3. 移至远程目录
  4. git pull c:\ localdir

因此,他没有推送到远程服务器,而是不断地从本地仓库拉到我们服务器上的仓库。 有点倒退。 当我面对他时,他问我有什么区别,我不能真正回答他,但是我认为有什么对吗?

所以我对大家的问题是:推入遥控器和从遥控器拉出有什么区别?

trans by 2020-02-17T23:48:35Z

具有修改和未跟踪内容的git子模块-为什么以及如何删除它?

这是我的git diff vim'的结果如下所示:

# On branch master
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#   (commit or discard the untracked or modified content in submodules)
#
#   modified:   vim/bundle/pathogen (modified content)
#   modified:   vim/bundle/sparkup (untracked content)
#
no changes added to commit (use "git add" and/or "git commit -a")

运行git diff vim显示如下:

diff --git a/vim/bundle/pathogen b/vim/bundle/pathogen
--- a/vim/bundle/pathogen
+++ b/vim/bundle/pathogen
@@ -1 +1 @@
-Subproject commit fcf77f5101f3e589ce006c40ad3a0432735a05cf
+Subproject commit fcf77f5101f3e589ce006c40ad3a0432735a05cf-dirty
diff --git a/vim/bundle/sparkup b/vim/bundle/sparkup
--- a/vim/bundle/sparkup
+++ b/vim/bundle/sparkup
@@ -1 +1 @@
-Subproject commit 04a81b41f116a19184359a6f8685c192f5c36c70
+Subproject commit 04a81b41f116a19184359a6f8685c192f5c36c70-dirty

为什么一个未跟踪,另一个被修改,差异意味着什么? 但最重要的是:它是如何发生的以及如何摆脱它?

trans by 2020-02-17T18:57:05Z

git rebase“被我们删除”和“被他们删除”

这个问题已经在这里有了答案:

  • 根据Git,谁是“我们”,谁是“他们”?                                     1个答案

假设我在master上重新建立了实验分支,并且文件中存在冲突。 当然,两个分支中都删除了文件。 因此,当我解决冲突时,在git status中,我看到了deleted by usdeleted by them。这非常令人困惑。 有什么办法可以理解它们的含义吗? 他们是谁,我们是谁?

还是在重新定级时有另一种方法知道哪个分支删除了哪个文件? 喜欢打印分支名称吗?

trans by 2020-02-17T16:39:21Z

从gi永久删除目录

在我的个人git仓库中,我有一个目录,其中包含成千上万个不再需要的小图像。 有没有办法从整个git历史记录中删除它们? 我试过了

git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch imgs" HEAD

git filter-branch --tree-filter 'rm -fr imgs' HEAD

但是git repo的大小保持不变。 有任何想法吗?

谢谢

trans by 2020-02-17T03:53:43Z

获取Gi中两个分支之间的差异

我做了以下工作(与实际情况相比,我进行了简化):

  • 创建一个分支Branch1,切换到它
  • 添加文件File1和修改现有文件File2并提交
  • 弄清楚我不需要File1,将其删除并提交

因此,原始分支和Branch1之间的实际区别只是File2的修改。

我想得到分支之间的实际差异,并放入Branch2。 一般来说,我想摆脱不必要的添加/删除File1的历史记录。

trans by 2020-02-16T19:44:03Z

合并-如何在git中备份私有分支

我在git中有一个本地分支机构,负责日常开发工作。 我的工作流程是:

  1. 在本地分支上做东西,提交
  2. 获取来源/母版
  3. 调整本地分支机构的基础,以赶上起源/母公司的新事物

一切正常,但是我遇到的大多数建议都说,不应“推”私有分支,定期在此分支上执行基础。

这里的问题是,在这种情况下,本地分支不会备份到服务器,并且保存工作的唯一方法是将其合并回“可推送”分支(即origin / master)

在这种情况下,您对工作流程有何建议?

谢谢!

更新:我意识到我原来的要求之一(避免使用外部实用程序)是不必要的限制。

我当前的解决方案是将我所有的存储库都存储在一个云同步文件夹中,这样我就可以免费获得备份。

trans by 2020-02-16T17:35:16Z

Android Studio:无法启动Gi

当我启动Android Studio时,出现一条消息

无法启动Git:C:\ Program Files(x86)\ Git \ cmd \ git.cmd   Git可执行文件的路径无效。 修理它。

但是我可以看到git.cmd在那。 那我该如何解决呢?

trans by 2020-02-16T15:48:00Z

git-打开另一个分支(如果不存在则创建),而不检查是否已经存在?

git checkout -b foofoo分支上打开(即使它不存在,它也已创建),但是如果foo分支已经存在,则会引发如下错误:

fatal: A branch named 'foo' already exists.

以下检查的命令是什么?

  • 如果分支已经存在,则将其打开(git checkout -b foo
  • 如果分支不存在,请创建它并打开它(git checkout -b foo
trans by 2020-02-16T02:52:34Z

ruby on rails-在git中管理schema.rb的首选方法是什么?

我不想将schema.rb添加到.gitignore,因为我希望能够从该文件加载新的数据库模式。 但是,将其保持选中状态会导致各种虚假冲突,这些问题可以通过全新的db:migrate:reset轻松解决。

基本上我想要一种方法:

  1. 将schema.rb保留在存储库中以进行部署时数据库设置
  2. 将schema.rb保留在“ .gitignore”中以进行常规开发

会有一两个人负责更新schema.rb,并知道它是正确的。

有没有办法我也可以吃蛋糕?

trans by 2020-02-16T00:54:39Z

将Git克隆到另一个现有的Git回购中

如果我将一个repo克隆到一个现有的git repo中,我会遇到任何问题吗?

为了简化起见,我正在开发一个库“ lib /”,该库应可用于我的所有项目。 这是一个单独的git repo。 我想将此lib /导入到我的所有项目中,并仅在一个位置进行更新,从不接触任何项目,而只是使用它。

我假设这是可以的,只是想知道是否有什么我应该注意的。 谢谢!

trans by 2020-02-15T20:16:14Z

git-如果有人重写了我的commi,如何重新提交过去的提交

刚遇到一个问题,即有人覆盖了我的整个提交,并且除此之外还有很多其他提交,现在我必须重新提交该特定提交。 任何帮助,将不胜感激。

有人发生合并冲突,合并时他丢失了我的所有更改。 我不知道他做了什么,但是我的改动还不存在。 历史上我的提交在那里,但是如果我看到他的合并上方,我的更改将被还原。

现在,我无法还原他的合并提交,因为与我相比,它包含许多文件,而且我也不想手动逐个更改每个文件。 有什么办法可以在不影响他人的情况下找回我的更改。

trans by 2020-02-15T09:53:41Z

我的Git bash忘记了我的别名。 我能做什么?

我正在运行Windows 7的笔记本电脑上使用适用于Windows的最新Git bash。当我定义别名时:

$ alias gitc='git commit -a'

在会议期间一切正常,但是如果我关闭并打开bash,我将无法恢复它们。但是,命令历史记录将保留。

我该怎么办? 我错过了什么?

谢谢!

trans by 2020-02-15T06:07:48Z

冲突-合并但覆盖Gi中的更改

当我在Git中合并分支以掌握时,我经常会遇到合并冲突。 有没有一种方法可以合并一个分支并只覆盖当前分支中的内容?

trans by 2020-02-15T04:43:18Z

git-提交并自动添加所有未跟踪的文件

我经常忘记我有一些新文件而直接做,

git commit -a -m "My commit message"

这只会提交更改的文件,我必须在新提交中添加其余文件。 这意味着虽然逻辑上它们是同一任务的一部分,但是有两个单独的提交。

我知道的最简单的方法是通过两个连续的命令在提交中包括未跟踪的文件:

git add -A
git commit -a -m "My commit message"

在一个命令中是否可能具有与上述相同的效果?

trans by 2020-02-15T00:48:26Z

macos-使用vim来更新更新janus后损坏的git commit消息

更新janus vim发行版之后,使用vim提交消息似乎存在问题。 最好的例子是在执行git pull进行他人更改时。 显示vim编辑器,键入我的提交消息,输入:wq,但是提交没有起作用,我收到以下错误消息:

error: There was a problem with the editor 'vi'.
Not committing merge; use 'git commit' to complete the merge.

然后,我必须手动提交:(

如何使git与vim完美搭配?

trans by 2020-02-14T20:49:39Z