javascript

git

java

python

git-remote

c++

github

django

c#

reactjs

c++-faq

git-checkout

generator

coroutine

spring-mvc

reflection

javascript-objects

html5

analytics

node.js

ssh-Git获取/拉/克隆挂在接收对象上

从git仓库中获取或提取信息,或克隆存储库时,我到了这一点:

remote: Counting objects: 6666, done.
remote: Compressing objects: 100% (5941/5941), done.
Receiving objects:  23% (1534/6460), 11.68 MiB | 23 KiB/s  

它挂了。 对象的23%/数目不是给定的,它的范围从个位数到60年代不等。 列出的下载速度也会冻结-并不是像它缓慢地向零爬行一样。

我旁边的那个家伙没有问题,所以这不是路由器问题。 我们将beantalk用作我们的工作存储库,但是我遇到了来自beantalk和github的问题(尽管有时它似乎会完成一个github)。

自升级到Mountain Lion和更新Xcode以来,这个问题似乎才出现。 我擦了git(包括XCode的),并尝试用自制软件安装它。 那没有用,所以我将其删除并尝试使用他们提供的Mac安装软件包,该软件包也无法解决该问题。

Beanstalk为git存储库提供SSH URL,但是通过SCP或SSH连接到我已经完成工作的服务器时,我没有任何问题。

这扼杀了我的工作流程,因此不胜感激!

trans by 2020-08-12T10:20:23Z

大文件Git

情况

我有两个服务器,生产和开发。 在生产服务器上,有两个应用程序和多个(6)数据库(MySQL),我需要将这些数据库分发给开发人员进行测试。 所有源代码都存储在开发服务器上的GitLab中,开发人员仅与此服务器一起使用,无权访问生产服务器。 当我们发布应用程序时,master会登录生产并从Git中提取新版本。 数据库很大(每个数据库都超过500M,并且还在增加),我需要将它们尽可能容易地分发给开发人员进行测试。

可能的解决方案

  • 在将每个数据库都转储到单个文件的备份脚本执行之后,执行一个脚本,将每个数据库推入其自己的分支。 如果开发人员想要更新其本地副本,则拉其中一个分支。

    发现这一项无效。

  • 生产服务器上的Cron每天保存二进制日志,并将它们推送到该数据库的分支中。 因此,在分支中,存在每日更改的文件,而开发人员会提取他没有的文件。 当前的SQL转储将以另一种方式发送给开发人员。 当存储库的大小太大时,我们会将完整的转储发送给开发人员,并刷新存储库中的所有数据,然后从头开始。

问题

  • 解决方案可行吗?
  • 如果git从存储库中推入/拉入,它是上传/下载整个文件,还是只是对其进行更改(即添加新行或编辑当前行)?
  • Git可以管理这么大的文件吗? 没有。
  • 如何设置在存储库中保留多少修订? 新解决方案无关紧要。
  • 有没有更好的解决方案? 我不想强迫开发人员通过FTP或类似方式下载如此大的文件。
trans by 2020-08-12T09:56:34Z

gerrit-git(pull vs checkout vs cherrypick)这是做什么用的?

在Android的gerrit ex:链接中,要下载补丁,我看到4个选项。

  1. 回购下载
  2. 退房
  3. 樱桃采摘

它们之间有什么区别?

这就是我对它们的看法。 请澄清

  1. repo download->下载完整的源代码(项目中所有git repos的源代码),直到提交
  2. 结帐->不知道是什么。
  3. 拉->不知道它做什么?
  4. cherry-pick->它尝试仅下载此更改并将其合并到源代码中。

我知道pull和checkout与Cherry-pick不同。 但是它们有什么不同?

trans by 2020-08-12T07:16:52Z

版本控制-git是否忽略空文件夹?

我创建了一个Android项目,将其添加到我的git repo中,提交并克隆到主数据库。 后来我尝试签出该项目,Eclipse抱怨缺少src文件夹。 我检查了我的存储库,发现主存储库和src文件夹丢失了(我在创建项目时确定它们在那里)。 那么有人可以解释一下这里发生了什么吗? 我是git的新手,所以也许我错过了一些东西?

trans by 2020-08-12T06:05:42Z

版本控制-Git并在多个分支上工作

我有几个Git分支:“实验”,“某物”和“大师”。

我切换到“实验”分支。 我注意到一个与“实验”无关的错误,该错误属于“某些”方面的更改。 我该如何解决?

我在想我应该切换到“某物”,修复错误,提交,然后再回到“实验性”。 我应该如何从“某物”中获取较小的更改并将其应用于“主”和“实验性”,以便当我切换到这些分支时不必再次重新修复该错误?

trans by 2020-08-12T01:06:52Z

我如何将git拉到特定分支?

我试图从heroku遥控器上拉出,我收到此消息:

>git pull heroku
You asked to pull from the remote 'heroku', but did not specify
a branch. Because this is not the default configured remote

我的本地分支是“开发”。

我如何从Heroku拉到我的本地分支“ develop”?

谢谢。

trans by 2020-08-11T11:51:12Z

取消跟踪并停止跟踪gi中的文件

我有一个名为.gitignore的深层子文件夹,其中包含我不希望被git(Windows)跟踪的名为.gitignore的文件。

在.gitignore中,我尝试了各种组合(例如.gitignore.gitignore等)都无济于事:每次我执行git status时,都会看到:

# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       foo/src/objects/a.object
#       foo/src/objects/b.object

只有当我将.gitignore添加到.gitignore时,文件才会从未跟踪的文件列表中消失。 我的通配符怎么了?

另外,什么时候需要.gitignore,什么时候应该.gitignore

rm是否有通配符功能,例如.gitignore

更新:类似地,将行.gitignore添加到.gitignore(并非总是可取,但仍然)无效。 这是不是很奇怪,因为过去可能已经跟踪了文件?

trans by 2020-08-11T09:46:38Z

我将如何在Git中编写一个合并前的钩子?

问题说明了一切。 有没有办法在合并之前执行操作? 我猜想有一种方法可以利用pre-commit挂钩,但是我不太确定。

trans by 2020-08-11T08:32:50Z

如何获取匹配正则表达式的最后一个Git标签

我需要Git命令来获取/查找以'v'开头的最后一个标签,以获取最新的版本提交(我在开头使用带有v字母的标签来标记下一个应用程序版本(例如:v0.9.1beta)。

有什么办法吗?

trans by 2020-08-11T06:10:11Z

如何在Android Studio中更改git分支

我的gitlab项目中有2个分支。 现在我在master(默认)分支上。 我想将其更改为另一个基础,这是我尝试的方法:

当我转到branch并单击pull时,我总是会收到错误消息:

pathspec“我的分支”与git已知的任何文件都不匹配

我该怎么办? 我要做的就是更改branch并执行pull请求。

trans by 2020-08-11T04:03:38Z

是否可以远程计算git存储库的对象和大小?

假设网络中某个地方存在公共git存储库。 我想克隆它,但首先我需要确定它的大小(例如git count-objects中有多少对象和KB)

有办法吗?

trans by 2020-08-11T03:09:58Z

GIT:将提交日期更改为作者d

是否可以将提交日期从我的提交更改为作者日期?

我修改了一些提交,现在的日期都一样了。 我想将其设置回旧的日期(或作者日期)。 这可能吗?

我正在使用Sourcetree,所以我有git命令行,但是我不是专业人士。 我的外部存储库是bitbucket。

trans by 2020-08-11T02:11:54Z

Git合并为n时开发为功能分支输出“已经是最新的”

我从开发中检出了一个功能分支,名为branch-x。过了一会儿,其他人将更改推送到了开发分支。

我想将这些更改合并到我的branch-x中。但是,如果这样做

git merge develop 

它说“已经是最新的”,不允许我合并。

branch-x显示branch-x和development之间存在差异。

如何将开发合并为branch-x

trans by 2020-08-11T01:53:39Z

使用git-svn处理SVN关键字扩展

最近,我问到有关Git中关键字扩展的问题,我愿意接受这种设计,而不是真的在Git中支持该想法。

不管是好是坏,我目前正在研究的项目都需要像这样的SVN关键字扩展:

svn propset svn:keywords "Id" expl3.dtx

使此字符串保持最新:

$Id: expl3.dtx 803 2008-09-11 14:01:58Z will $

但是我很想使用Git进行版本控制。 不幸的是,根据文档,git-svn不支持此功能:

“我们忽略除svn:executable之外的所有SVN属性”

但是,通过几个前后提交钩子来模拟此关键字似乎并不困难。 我是第一个想要这个的人吗? 有人有一些代码可以做到这一点吗?

trans by 2020-08-10T22:37:51Z

是否可以使git svn dcommit导致单个svn commit?

根据手册,git dcommit“将为git中的每个提交在SVN中创建一个修订。” 但是有办法避免多个Subversion修订吗? 也就是说,要让git合并所有更改,然后再执行svn commit

trans by 2020-08-10T20:07:24Z

当两个对等方同时将更改推送到同一远程时,git如何工作

我是git的新手,通常使用P4,它具有中心存储库,而git是分布式VCS。

我对两个对等方同时将更改推送到同一远程时git的工作方式感兴趣。假设每个对等方在推送之前解决了所有冲突。 我猜如果git报告冲突,后面的一个将被拒绝!

但是,据我了解,git在内部是键/值存储,非常类似于当前流行的NOSQL数据库,尤其是支持p2p复制的Couch-DB。

实际上,我想问的是,如果客户端将更改推送到远程git存储库,则git处理会发生冲突吗? 推送是否被拒绝?

根据马克的回答,我认为应该拒绝这种推动。

trans by 2020-08-10T17:46:46Z

ubuntu-git错误:RPC失败; 卷曲56 GnuTL

我使用Ubuntu 16.04。 当我想git push origin master时,我得到:错误:RPC失败; curl 56 GnuTLS接收错误(-12):收到TLS致命警报。致命:远端意外挂断致命:远端意外挂断一切都是最新的

trans by 2020-08-10T14:44:32Z

git clone无法解析代理

当我尝试从git克隆时

git clone "http://github.com/symfony/symfony.git" "d:/www/a/vendor/symfony"

我得到一个错误

Cloning into 'd:/www/a/vendor/symfony'...
error: Couldn't resolve proxy '(null)' while accessing http://github.com/symfony/symfony.git/info/refs
fatal: HTTP request failed

我直接连接到了互联网(没有代理)。 我试图关闭防火墙,但没有帮助。 我在Windows上,刚刚从[http://code.google.com/p/msysgit/downloads/list]安装了Git-1.7.10-preview20120409.exe。 以前我有1.7.8,并且此命令有效。 我还重新安装了TortoiseGit,但我认为这没有关系。

我的3005090256069854854文件是

[http]
    proxy = 
[user]
    name = xxxx
    email = xxx@example.com
trans by 2020-08-10T10:24:15Z

git push-在Git中使用receive.denyCurrentBranch有什么后果?

我有一个Git存储库。 我已经克隆了存储库,并且可以提交我的本地更改。 当我将更改推送到服务器时,它可以工作。

创建分支后,立即签出该分支,提交我的工作,然后签出主分支。 然后,我将本地更改合并到master分支中。 当我尝试推送到服务器时,出现以下异常:

Welcome to Git (version 1.7.11-preview20120620)

Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.

$ git push origin master:master
 Counting objects: 9, done.
 Delta compression using up to 4 threads.
 Compressing objects: 100% (7/7), done.
 Writing objects: 100% (8/8), 13.68 KiB, done.
 Total 8 (delta 2), reused 1 (delta 0)
 Unpacking objects: 100% (8/8), done.
 remote: error: refusing to update checked out branch: refs/heads/master
 remote: error: By default, updating the current branch in a non-bare repository
 remote: error: is denied, because it will make the index and work tree inconsistent
 remote: error: with what you pushed, and will require 'git reset --hard' to match
 remote: error: the work tree to HEAD.
 remote: error:
 remote: error: You can set 'receive.denyCurrentBranch' configuration variable to

 remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into

 remote: error: its current branch; however, this is not recommended unless you
 remote: error: arranged to update its work tree to match what you pushed in some

 remote: error: other way.
 remote: error:
 remote: error: To squelch this message and still keep the default behaviour, set

 remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
 To c:/jGit
 ! [remote rejected] master -> master (branch is currently checked out)
 error: failed to push some refs to 'c:/gitRepository'

一种解决方案是运行以下命令:

git config receive.denyCurrentBranch ignore

此后它可以工作,但是我想知道为什么我需要使用此选项。 这是唯一的选择吗? 这样做的后果是什么?

我真正想做的是创建分支,将它们合并到master分支,然后将所做的更改推送到服务器。

trans by 2020-08-10T08:20:09Z

无法看到新文件添加到我的git工作目录中

git版本1.7.4.1

我在Ubuntu上使用git。

我已经将一些文件从另一个目录复制到了我的git工作目录中。 通常会出现在git ls-files下。但是,它们不会出现。 因此,我无法添加它们。

当我执行git ls-files时,不会显示新文件。

我尝试通过执行git ls-files添加它们,然后尝试git status。文件未显示。

因此,我打开了文件,并做了一个git ls-files同名文件。 git status仍然看不到该文件。

我已经完成了git ls-files,新文件显示正常。

我已经检查了文件许可权,它们与我的git目录中的所有当前文件相同。

我以前从未遇到过这个问题。

非常感谢您的任何建议,

trans by 2020-08-10T04:54:19Z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共134页