Questions tagged «git»

Git是最初由Linus Torvalds设计和编写的开源分布式版本控制系统。它通常用于跟踪软件项目的源代码。作为DVCS,Git在分支,合并和分布式开发方面提供了强大的帮助。

1
有没有办法检查克隆回购的完整性。
我检查了一个远程回购。现在我做了一些添加一些文件到repo的操作。以及(可能)删除仓库中的一些文件。在这两种情况下,git都没有被告知这些变化。有没有办法让git检查回购的完整性。并告诉我任何文件被更改(或不更改)? 我看过这篇文章1,但如果这涵盖了我上面分享的场景,那就不知道了。是否$git fsck足够?如果我从本地仓库中删除文件。git怎么告诉/显示它? 期待答案。
9 git 

1
GPG签署旧的git commits是个好主意吗?
我只是意识到我忘了告诉git使用我的GPG密钥。我进行了许多提交但未签名。我应该回去给他们签名吗? 我不是在指是否应该对标签进行签名,但是我决定对提交本身进行签名。我不相信我会想到任何不这样做的理由,除了可能是也可能不是我写的git历史记录已损坏。我相信GitHub不会弄乱我的git历史,而且我是我99%的项目的唯一作者,因此鉴于此,我应该这样做吗? 我找到了这个答案,所以我现在知道这是可能的,但从哲学上来讲,应该吗?
9 git  gnupg 

2
我需要没有密码提示的sudo脚本。我哪里做错了?
我在sudo组中: $ id uid=1002(molot) gid=1002(molot) groups=1002(molot),27(sudo),33(www-data) 在我看来,我似乎有适当的设置: sudo ALL=(ALL:ALL) NOPASSWD: ALL 这是最后一条未注释的行。 但是,当我尝试git pull输入时,我被要求重新输入密码: $ sudo -u www-data git --git-dir /var/www/.git --work-tree /var/www pull "origin" master [sudo] password for molot: 当我登录控制台时这不是问题,但是在脚本中是不可接受的。那么,如何允许sudo组中的任何人git pull作为www-data而不重新输入密码? 当我直接输入我的名字时: molot ALL=(ALL) NOPASSWD: ALL 这个对我有用。但是,显然,不适合玛丽安或sudo组的其他用户。据我了解的手册,用户名和组名都应该在第一个文件中工作。
9 linux  git  sudo 


4
Git损坏的主分支
我在Windows 7上使用gitExtensions打开Visual Studio项目的Git存储库。它突然是空的。该存储库存在,但是我所有的提交都消失了。 我使用的是图形界面,我相信这是自他们更新以来,我第一次打开它。 我不确定如何取回我的提交。 当我打字 git log 我收到 严重的:严重的默认版本'HEAD' 更新 查看/programming/1545407/recovering-broken-git-repository后,我尝试了 git fsck 它返回: 错误:无效的HEAD 致命错误:松散的对象36b7d9e1ca496bcb864c0b9c8671fcec97fbda31(存储在.git / obj ects / 36 / b7d9e1ca496bcb864c0b9c8671fcec97fbda31) 承诺退货: 错误:无法解析引用HEAD:没有此类文件或目录 致命:无法锁定HEAD ref 和记录主分支返回 $ git log master警告:忽略损坏的ref refs / heads / master。警告:忽略损坏的裁判ref / heads / master。致命:参数'master'含糊不清:未知修订或路径不在工作树中。使用“-”将路径与修订分开 我只会继续粘贴可能相关的东西 $ git reflog master 警告:忽略损坏的ref refs / …

1
git fetch:如何忽略新分支
我的存储库中添加了几个遥控器。我只被他们的主分支所吸引,但是如果我跑 git fetch --all 要么 git remote update 然后提取所有分支。是否可以设置git,使其仅获取远程主分支上的更改,并且不创建任何新的远程跟踪分支?
9 git 

1
另一个“ SSH连接到主机github.com端口22:错误的文件号”
我的首次SSH连接有问题。是的,我已经完成了您的指南,已经尝试了“处理防火墙和代理”一文,但问题仍然存在。我正在使用Win7 32bit,Windows防火墙已禁用,没有任何第三方防火墙,ESET Nod32 Antivirus没有阻止任何端口,我没有使用任何代理(都不是本地代理)。 日志如下: 普通SSH连接尝试 C:\Users\Mariusz>ssh -vvv git@github.com OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007 debug2: ssh_connect: needpriv 0 debug1: Connecting to github.com [207.97.227.239] port 22. debug1: connect to address 207.97.227.239 port 22: Not owner ssh: connect to host github.com port 22: Bad file number NCAT连接尝试 C:\Users\Mariusz>ncat github.com 22 Strange …
9 ssh  git  github 

2
在git bash脚本中使用cygwin可执行文件
我有一个.sh脚本,双击该脚本可在Windows的git中执行该脚本。 现在我需要convert来自cygwin(已安装)的(imagemagick),并使用其绝对路径调用它/c/cygwin64/bin/convert.exe--但我得到: 致命错误-检测到cygheap基本不匹配。此问题可能是由于使用了不兼容的cygwin DLL版本。 将实际convert通话包装在cygwin bash通话中,甚至在cmd.exe通话中也无济于事。这有点奇怪,因为有时我会在.cmd脚本中直接使用cygwin可执行文件,而且这种方法一直有效。 我能做什么?最好将我的程序限制为一个文件的解决方案。 (我知道我可能只可以安装Windows原生imagemagick。但是第二天,我需要在git-for-Win-Shellscript中使用另一个cygwin工具。如果可能,我可能会使我的工作场所中的Windows的git过时了)
9 windows  bash  git  cygwin 

1
git clone致命:'origin'似乎不是VMware vmhgfs共享的git存储库
fatal: 'origin' does not appear to be a git repository在执行git clone(go get)时出现此错误。 $ git clone https://github.com/andybalholm/cascadia /path/to/Go/src/github.com/andybalholm/cascadia Cloning into '/path/to/Go/src/github.com/andybalholm/cascadia'... fatal: 'origin' does not appear to be a git repository fatal: Could not read from remote repository. 我从SO中找到的现有答案是关于git push(具有错误的.gitconfig)或具有错误的权限,我已经对其进行了两次检查以排除该错误。 我以前从未遇到过这样的问题,但这是一台全新的Ubuntu 16.04 LTS Xenial机器,我也是第一次使用Ubuntu官方go1.6。 首先让我坚持认为这不是错误的权限问题,因为我创建/path/to/Go/src/github.com/andybalholm/cascadia自己时没有任何问题。 但是,进一步的调查证实,这实际上是错误的权限问题-我的Ubuntu 16.04在VM中,其vmhgfs共享以某种方式允许我但不能git在其中运行命令。 所以,再一次 将Ubuntu 15.04与VMware自己的VMware Tools …
9 vmware  git 

1
Git-错误的无效路径
我在Mac上工作了很长时间,并提交了一个类似于以下文件的文件: C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls 该文件在存储库中不存在。我的存储库实际上位于/Users/Sethuram/Development/Csmart/workspaces/csmart。看来我可能已经以某种方式将带有名称的文件检C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls入了git repo并将其推送。 现在,我正在尝试在Windows框中克隆此存储库,并且出现如下错误: error: Invalid path 'C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls' 我了解其无效路径。我不确定如何纠正它。我再也无法访问我的Mac并从那里删除和推送。 在Windows框中,此文件显示为我需要提交的更改: $ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # deleted: C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls 如何摆脱这个错误?
9 windows  mac  git 

1
当我尝试在Git中删除文件夹时,为什么没有“ pathspec”?
我正在尝试从Git存储库中删除一个文件夹 git rm folderToRemove 但是当我尝试这样做时,Git会发出此错误。 fatal: pathspec 'siteFiles/applicationFiles/templates/folderToRemove' did not match any files 我当前的目录是“模板”。我发现此错误很奇怪,因为我可以cd进入文件夹“ folderToRemove”,因此它显然存在。这个错误是什么意思?
9 git 

2
如何继续克隆已停止下载的Git存储库?
当我的互联网连接突然失败时,我正在克隆一个Git存储库。因此,下载停止了,大约下载了总文件的50%。 但是,我无法继续下载。如果我尝试执行一些“拉/取”操作,Git会提示“致命:目标路径”已存在,并且不是空目录。”。我发现的唯一方法是删除目标文件夹并从头开始下载。 有什么方法可以执行从停止下载继续下载的操作? 我在Windows上使用Git(通过安装的TortoiseGit-1.5.2.0-32bit.msi + Git-1.7.0.2-preview20100309.exe)。

1
告诉git哪个私钥用于没有主文件夹的用户
我在读这个问题 告诉git使用哪个私钥 ,并且答案不适用于用户没有任何主目录的情况。 我们现在正在设置Jenkins服务器,运行Jenkins的用户没有任何主文件夹。但该特定用户必须访问GIT存储库。 运行GIT的用户如何使用密钥身份验证?
8 ssh  git  ssh-keys 

1
Git中损坏的文件
我最近使用以下命令从我的git repos历史记录中删除了一些文件夹: git filter-branch --index-filter 'git rm -r --cached var' -- --all 不幸的是我不能再从这个回购中拉出来了,这是我得到的错误集: git pull remote: Counting objects: 3953, done. remote: Compressing objects: 100% (2810/2810), done. error: garbage at end of loose object '4b391c2cc93ccc8d2f7262335629a7f81d6bcbe0' fatal: object 4b391c2cc93ccc8d2f7262335629a7f81d6bcbe0 is corrupted fatal: index-pack failed

1
Git安装最终被困在Windows 10上
正如您从安装屏幕截图中看到的那样,我正在尝试在另一个驱动器上安装Git(我不想在C上安装:)并且它会卡住。 我正在从提升的命令提示符下安装它,因为它在尝试安装正常方式时会卡在最后。 我通过选择右键单击并选择以管理员身份运行来尝试安装,但仍然是同样的问题。 安装也使用chocoletty卡在PowerShell上。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.